C# Hashtable类
哈希表类表示基于键的散列码有组织键- 值对的集合。它使用键来访问集合中的元素
哈希表是当需要使用键来访问元素,可以找出有用的键值。哈希表中每个项目都有一个键/值对。该键被用来访问该集合中的项目。
哈希表(Hashtable)类的方法和属性
下表列出了一些Hashtable类的常用属性:
属性 | 描述 |
---|---|
Count | 获取包含在哈希表键 - 值对的数量 |
IsFixedSize | 获取一个值,指示哈希表是否具有固定大小 |
IsReadOnly | 获取一个值,指示哈希表是否是只读 |
Item | 获取或设置与指定的键关联的值 |
Keys | 获取包含在哈希表的键对应的ICollection |
Values | 获取包含在Hashtable中值的ICollection。 |
下表列出了一些Hashtable类的常用方法:
S.N | 方法名称及用途 |
---|---|
1 |
public virtual void Add( object key, object value ); 将带有指定键和值到哈希表的元素 |
2 |
public virtual void Clear(); 将删除Hashtable中的所有元素 |
3 |
public virtual bool ContainsKey( object key ); 判断哈希表是否包含一个特定的键 |
4 |
public virtual bool ContainsValue( object value ); 判断哈希表是否包含特定的值 |
5 |
public virtual void Remove( object key ); 从Hashtable中删除指定键对应的元素 |
例子:
下面的例子演示了这一概念:
using System; using System.Collections; namespace CollectionsApplication { class Program { static void Main(string[] args) { Hashtable ht = new Hashtable(); ht.Add("001", "Zara Ali"); ht.Add("002", "Abida Rehman"); ht.Add("003", "Joe Holzner"); ht.Add("004", "Mausam Benazir Nur"); ht.Add("005", "M. Amlan"); ht.Add("006", "M. Arif"); ht.Add("007", "Ritesh Saikia"); if (ht.ContainsValue("Nuha Ali")) { Console.WriteLine("This student name is already in the list"); } else { ht.Add("008", "Nuha Ali"); } // Get a collection of the keys. ICollection key = ht.Keys; foreach (string k in key) { Console.WriteLine(k + ": " + ht[k]); } Console.ReadKey(); } } }
让我们编译和运行上面的程序,这将产生以下结果:
001: Zara Ali 002: Abida Rehman 003: Joe Holzner 004: Mausam Benazir Nur 005: M. Amlan 006: M. Arif 007: Ritesh Saikia 008: Nuha Ali