C# - Hashtable 类
Hashtable 类表示一个键值对的集合,这些对基于键的哈希码进行组织。它使用键来访问集合中的元素。
当您需要使用key(键)访问元素时,可以使用哈希表,并且可以识别有用的键值。哈希表中的每个项目都有一个键值对。键用于访问集合中的项目。
Hashtable 类的方法和属性
下表列出了 Hashtable 类的一些常用属性 -
| Sr.No. | 属性 &说明 |
|---|---|
| 1 | Count 获取 Hashtable 中包含的键值对的数量。 |
| 2 | IsFixedSize 获取一个值,指示 Hashtable 是否具有固定大小。 |
| 3 | IsReadOnly 获取一个值,指示 Hashtable 是否为只读。 |
| 4 | Item 获取或设置与指定键关联的值。 |
| 5 | Keys 获取包含哈希表中键的 ICollection。 |
| 6 | Values 获取包含哈希表中值的 ICollection。 |
下表列出了 Hashtable 类的一些常用方法 -
| Sr.No. | 方法和说明 |
|---|---|
| 1 | public virtual void Add(object key, object value); 将具有指定键和值的元素添加到哈希表中。 |
| 2 | public virtual void Clear(); 从哈希表中移除所有元素。 |
| 3 | public virtual bool ContainsKey(object key); 判断哈希表是否包含特定键。 |
| 4 | public virtual bool ContainsValue(object value); 判断哈希表是否包含特定值。 |
| 5 | public virtual void Remove(object key); 从哈希表中移除具有指定键的元素。 |
示例
以下示例演示了以下概念:
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

csharp_collections.html