C#|C# 集合---哈希表(Hashtable)

三,哈希表

  1. 什么是哈希表
    它使用键来访问集合中的元素。当您使用键访问元素时,则使用哈希表,而且您可以识别一个有用的键值。哈希表中的每一项都有一个键/值对。键用于访问集合中的项目。Hashtable类常用的属性
  2. 为什么会有HashTable
    在ArrayList集合中,使用索引访问元素,如果不能确切知道索引的值,访问就比较困难,而HashTable能实现通过一个键来访问一个值,而不需要索引的值
  3. 什么情况下使用哈希表
    (1)某些数据会被高频率查询
    (2)数据量大
    (3)查询字段包含字符串类型
    (4)数据类型不唯一
  4. 【C#|C# 集合---哈希表(Hashtable)】Hashtable类常用的属性
属性 描述
Count 获取 Hashtable中包含的键值对个数。
IsFixedSize 获取一个值,表示 Hashtable是否具有固定大小。
IsReadOnly 获取一个值,表示Hashtable是否只读。
Item 获取或设置与指定的键相关的值。
Keys 获取一个 ICollection,包含 Hashtable 中的键。
Values 获取一个 ICollection,包含 Hashtable 中的值。
  1. Hashtable类常用的方法
方法名 描述
public virtual void Add( object key, object value ); 向Hashtable添加一个带有指定的键和值的元素。
public virtual void Clear(); 从Hashtable中移除所有的元素。
public virtual bool ContainsKey( object key ); 判断Hashtable是否包含指定的键。
public virtual bool ContainsValue( object value ); 判断Hashtable是否包含指定的值。
public virtual void Remove( object key ); 从Hashtable中移除带有指定的键的元素。
Hashtable table = new Hashtable(); table.Add(1,"张三"); table.Add(2, "李四"); table.Add("1", "张三"); //声明了一个int作为键类型,string作为值类型的键值对集合 Dictionary list = new Dictionary(); list.Add(1,"zs"); foreach (DictionaryEntry item in table) { Console.WriteLine(item.Key+":"+item.Value); }

    推荐阅读