请教下 hashmap怎么使用?

unhappyless_23 2007-08-19 10:45:32
是键值对吗?不允许一对多?可以通过键找值,反过来呢?这容器里的对象不要求同一类型吧?给他添加一个元素不一定要 Add 吧?直接给个索引赋值就行了吧?


using System;
using System.Collections;
class IndexClass
{

Hashtable aa = new Hashtable();

public string this[int index]
{
get
{

return aa[index].ToString();
}
set
{

//aa[index] = value; //直接赋值
aa.Add(index, value);
}
}

public int this[ string index]
{
get
{
return (int)aa[index];
}
set
{
// aa[index] = value;
aa.Add(index, value);

}
}
}

class Test_3
{
static void Main()
{
IndexClass ic = new IndexClass();

ic["1"] = 2;
ic[3] = "1";
Console.WriteLine(ic["1"]);
Console.WriteLine(ic[3]);
}
}
...全文
913 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
unhappyless_23 2007-08-21
  • 打赏
  • 举报
回复
up
unhappyless_23 2007-08-20
  • 打赏
  • 举报
回复
为什么可以直接赋值 aa[index] = value;

可以不用 aa.Add(index, value);
Avoid 2007-08-19
  • 打赏
  • 举报
回复
看看数据结构就明白了
unhappyless_23 2007-08-19
  • 打赏
  • 举报
回复
5.6 两问题,

上面代码直接赋值就没问题,把注释的还原就可以了。
ice_frank 2007-08-19
  • 打赏
  • 举报
回复
1.是键值;
2.不允许;
3.可以通过键找值,反过来不行;
4.不要求同一类型,如果用泛型的话,就要同一类型;
5.一定要 Add;
6.不行
unhappyless_23 2007-08-19
  • 打赏
  • 举报
回复
拜托,看什么数据结构?

我想看源码,很怀疑是不是有什么机制转换的。 F11 看不了。

为什么可以直接赋值 aa[index] = value;可以不用 aa.Add(index, value);
内容概要:本文旨在帮助读者应对Java校招面试,通过解析常见面试题,结合理论与代码示例,深入浅出地讲解Java基础知识。文章涵盖Java基础特性(平台无关性、面向对象特性)、数据类型(基本数据类型、引用数据类型)、关键字(static、final)、方法相关(方法重载、方法覆盖)、流程控制语句(if-else、switch、for循环、while循环、do-while循环)、数组与集合(数组、ArrayList、HashMap)以及异常处理(try-catch-finally、throws和throw)。每个知识点都配有具体的代码示例,便于读者理解和实践。 适合人群:即将参加Java校招面试的应届毕业生或初学者,特别是那些希望系统复习和巩固Java基础知识的人群。 使用场景及目标:①帮助读者理解Java的核心概念,如平台无关性、封装、继承、多态等;②通过代码示例加深对关键字、方法重载与覆盖的理解;③掌握常用的流程控制语句和数据结构,如数组、ArrayList、HashMap;④学会处理常见异常,提高代码健壮性。 阅读建议:建议读者结合实际编程练习,逐个尝试文中提供的代码示例,理解每个知识点的具体应用场景。对于不熟悉的领域,可以通过编写更多类似的代码来强化记忆。同时,遇到不懂的地方可以参考官方文档或向他人请教

111,093

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧