首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

请教怎么向Hashtable插入一个值

2012-01-23 
请问如何向Hashtable插入一个值?Hashtable ht new Hashtable()ht.Add(0, 0)ht.Add(2, 2)ht.Add(3, 3)

请问如何向Hashtable插入一个值?
Hashtable ht = new Hashtable();
ht.Add(0, 0);
ht.Add(2, 2);
ht.Add(3, 3);

我想实现类似AddAt(int index, object key, object value)的方法,在0和2之间插入一个值。
我现在想到的方法就是在INDEX处截断,前面clone(),后面重新Add.但觉得效率低。
有没有更好的方法?

[解决办法]
你的功能可以使用sortlist来实现
但如果你使用的数据较多,那么sorklist使用的时间不断上升。而hasttable却不会,hasttable的查询速度是恒定的
[解决办法]
Hashtable是无序的~~~
你的Value如果不是统一的
你可以借助ArrayList等先排序
然后重新添加~~~
[解决办法]
hashtable本身是通过key.GetHashCode()方法来排序的,所以无论你怎么Add(key,value), 它的keys都是一个IEnumeration,
你一定要排序的话,不要用Hashtable.

热点排行