Dictionary与Hashtable的区别
Dictionary与Hashtable的区别
这个问题已经有了答案:
可能是重复问题:
为什么 C# 中首选 Dictionary 而不是 Hashtable?
Dictionary 和 Hashtable 之间的区别是什么?如何决定使用哪个?
admin 更改状态以发布 2023年5月21日
让我们举一个例子来解释hashtable和dictionary之间的差别。
这里有一个使用hashtable实现的方法
public void MethodHashTable() { Hashtable objHashTable = new Hashtable(); objHashTable.Add(1, 100); // int objHashTable.Add(2.99, 200); // float objHashTable.Add('A', 300); // char objHashTable.Add("4", 400); // string lblDisplay1.Text = objHashTable[1].ToString(); lblDisplay2.Text = objHashTable[2.99].ToString(); lblDisplay3.Text = objHashTable['A'].ToString(); lblDisplay4.Text = objHashTable["4"].ToString(); // ----------- Not Possible for HashTable ---------- //foreach (KeyValuePairpair in objHashTable) //{ // lblDisplay.Text = pair.Value + " " + lblDisplay.Text; //} }
下面是dictionary的实现
public void MethodDictionary() { Dictionarydictionary = new Dictionary (); dictionary.Add("cat", 2); dictionary.Add("dog", 1); dictionary.Add("llama", 0); dictionary.Add("iguana", -1); //dictionary.Add(1, -2); // Compilation Error foreach (KeyValuePair pair in dictionary) { lblDisplay.Text = pair.Value + " " + lblDisplay.Text; } }