/*哈希表,表示键/值对的集合,这些键/值对根据键的哈希代码进行组织。它的每个元素都是一个存储在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();