哈希表hashtable课堂笔记
/*哈希表,表示键/值对的集合,这些键/值对根据键的哈希代码进行组织。它的每个元素都是一个存储在DictionaryEntry对象中的键/值对。键不能为空引用,但值可以。哈希表的构造函数有多种,这里介绍两种最常用的。*/ //(1)使用默认的初始容量、加载因子、哈希代码提供程序和比较器来初始化Hashtable类的新的空实例,语法格式如下。 Hashtable hashtable1 = new Hashtable(); //(2)使用指定的初始容量、默认加载因子、默认哈希代码提供程序和默认比较器来初始化Hashtable类的新的空实例,语法格式如下。 Hashtable hashtable2 = new Hashtable(10);//Hashtable容量为10; //(3)添加元素 hashtable1.Add("id", "H1234");//键.值 hashtable1.Add("name", "张三");//键.值 hashtable1.Add("sex", "男"); Console.WriteLine(hashtable1.Count); Console.ReadLine(); ////(4)删除元素在哈希表中删除元素有两种方法:Clear()方法和Remove()方法。 hashtable1.Clear(); Console.WriteLine(hashtable1.Count); Console.ReadLine(); hashtable1.Remove("id");//移除hashtable中指定的元素; Console.WriteLine(hashtable1.Count); Console.ReadLine(); //遍历哈希表(与数组类似,哈希表也可以使用foreach语句进行遍历。需要注意的是,哈希表中的元素是一个键/值对,因此需要使用DictionaryEntry结构进行遍历。DictionaryEntry结构表示一个键/值对的集合) Console.WriteLine("\t键 \t值"); foreach (DictionaryEntry dicEntry in hashtable1) { Console.WriteLine("\t" + dicEntry.Key + "\t" + dicEntry.Value); } Console.ReadKey(); //查找元素(在哈希表中查找元素时,可以使用Hashtable类提供的Contains()方法、ContainsKey()方法和ContainsValue()方法。) //ContainsKey()方法和Contains()方法实现的功能、语法都相同,这里不再详细说明。 Console.WriteLine(hashtable1.ContainsKey("id")); Console.WriteLine(hashtable1.ContainsValue("33")); Console.ReadLine();