HashTable入门注意小点

来源:互联网 发布:淘宝助理一键适配 编辑:程序博客网 时间:2024/05/28 01:36

HashTable不能包含重复的key。在代码中,如果使用Add()方法添加重复的key/vale,程序在运行时,会抛出异常,代码、结果如下:

            Hashtable ages = new Hashtable();            ages["zhangsan"] = 10;            ages["lisi"] = 20;            ages["wanger"] = 34;            ages["xxx"] = 43;            ages["xxx"] = 43;            ages.Add("xxx", 34);

异常信息: 已添加项。字典中的关键字:“xxx”所添加的关键字:“xxx”。

如果使用方括号的方法添加key/value,则在遍历Hashtable对象的时候,会忽略除第一个key之外的所有相同key,参考如下代码,预期的Hashtable应该为5,但实际是4,遍历输出也会忽略重复的项:

            Hashtable ages = new Hashtable();            ages["zhangsan"] = 10;            ages["lisi"] = 20;            ages["wanger"] = 34;            ages["xxx"] = 43;            ages["wanger"] = 67;            Console.WriteLine("ages.Count: " + ages.Count);            foreach(DictionaryEntry item in ages)            {                string name = (string)item.Key;                int age = (int)item.Value;                Console.WriteLine("name: {0},         age: {1}", name, age);            }
输出:




0 0
原创粉丝点击