Hashtable和Dictionary
1.HashTeble:
形式特点:
一个映射关系,其模式与ArrayList类似,键和值都可以是任意类型来进行插入,不做过多的限制。
应用实例:
1 static void Main() 2 { 3 Hashtable hashtable = new Hashtable(); 4 hashtable.Add(0, "a"); 5 hashtable.Add("b", 1); 6 hashtable.Add(3, 3); 7 //遍历所有的键 8 foreach (var key in hashtable.Keys) 9 { 10 Console.WriteLine(key); 11 } 12 //遍历所有的值 13 foreach (var value in hashtable.Values) 14 { 15 Console.WriteLine(value); 16 } 17 }
static void Main() { //根据字母表的位置输出对应字母 int[] num = { 1, 2, 3, 4, 5, 6 }; string alp = "ABCDEF"; Hashtable ht = new Hashtable(); for (int i = 0; i < num.Length; i++) { ht.Add(num[i], alp[i]); } Console.WriteLine("请输入要查询第几个字母:"); int n = int.Parse(Console.ReadLine()); Console.WriteLine(ht[num[n - 1]]); }
2.Dictionary:
形式特点:
1.Dictionary本质上是一个映射的关系,<string,int>表示每一个string类型的变量值都能映射到int类型的变量值,其中自变量用索引(数组下标)来进行表示
2.其结构类型和之前的List十分类似,有着相似的增删改查功能
代码实例:
public static void Main() { Dictionary<string,int> dictionary = new Dictionary<string,int>(); dictionary.Add("a", 1); dictionary.Add("b", 2); //dictionary.Add("a", 3);//本行会发生报错,Add只能用于增添,而不能用于修改,也可以理解为自变量只能对应一个因变量(函数思想) dictionary.Remove("a");//只需输入索引即可找出对应的元素进行删除,Dictionary类无RemoveAt函数 dictionary["a"] = 3;//可通过对应的下标索引对值进行修改 dictionary["c"] = 4;//也可以通过下标索引直接增添一个值放在字典集的末尾 Dictionary<string,int> dictionary1 = new Dictionary<string,int>() { {"a", 1}, {"b", 2}, {"c", 3}, };//也可以对字典类进行如上所示的初始化 foreach (var item in dictionary) { Console.WriteLine(item); } }

浙公网安备 33010602011771号