永发信息网

c#中hashtable问题

答案:2  悬赏:20  手机版
解决时间 2021-12-25 16:55
class Program
{
static void Main(string[] args)
{
Hashtable hs = new Hashtable();
hs.Add("001", "str1");
hs.Add("002", "str2");
hs.Add("003", "str3");
Console.WriteLine("code string");
foreach (string s in hs.Keys)
{
Console.WriteLine(s + " " + hs[s]);
}
Console.ReadLine();
}
}

为什么输出是先str3.再str1.再str2.
是不是跟Hashtable的结构有关系?
谢谢!
最佳答案
哈希表不是顺序表,输出不一定有序。
对哈希表进行排序在这里的定义是对key/value键值对中的key按一定规则重新排列,但是实际上这个定义是不能实现的,因为我们无法直接在Hashtable进行对key进行重新排列,如果需要Hashtable提供某种规则的输出,可以采用一种变通的做法:
ArrayList akeys=new ArrayList(ht.Keys); //别忘了导入System.Collections
akeys.Sort(); //按字母顺序进行排序
foreach(string skey in akeys)
{
Console.Write(skey + ":");
Console.WriteLine(ht[skey]);//排序后输出
}
全部回答
c#中哈希表中元素可以 add remove clear 也可以重置,就像 hashtalbe[key] = value 想实现java 的hashmap,就写一段判断喽: f (table.containskey(key)) { table[key] = value; } else { table.add(key, value); } 还有注意:哈希表中存进去是都是先转换为 object 的
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
尧岭派出所位置在什么地方啊,我要过去办理业
雪铁龙c2 仪表台如何拆
我女朋友说我显得太成熟,想让我穿的阳光点,
淡水派出所位置在什么地方啊,我要过去办理业
为什么贴吧总是说我的账号有被盗风险让我验证
三亚真疯了吗,机票这么贵
单选题铁在高温下与水蒸气反应,生成四氧化三
洋酒和白酒有什么区别
古井派出所办公地址在什么地方?我要处理点事
卧室里有到顶衣橱该如何吊顶
物质从________变为________叫做熔化,要____
湖镇派出所位置在什么地方啊,我要过去办理业
有意义的女孩名
园洲派出所在什么地方啊,我要处理点事
单选题下列关于电场线的说法正确的是:A.静电
推荐资讯
惠州水东派出所办公地址在什么地方?我要处理
为什么搜索我的QQ昵称搜不到啊呢?
工务铁路朗诵,类似于诗歌
什么水果比较酸
初中毕业老师给后进生的评语
手机怎样查看无线密码
塑料模具如何选择模架的问题
儋州市两院宝岛派出所办公地址在什么地方?我
随着我国三农问题的解决,小明家近两年的收入
毕业证号是指学位证上的编号还是毕业证书上的
华为型号MLA-TL10价格
士兰微股票历史最低价是多少?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?