哈希表(HashTable)是一种用于存储键值对的数据结构。它是基于哈希函数实现的,可以快速地插入、删除和查找数据。
哈希表的特点是通过将键映射到一个索引来存储和访问数据,这个索引是通过哈希函数计算得到的。哈希函数将键转换为一个唯一的整数值,然后将该值作为索引来访问数组中的元素。这样可以大大提高数据的访问效率。
在C#中,哈希表是通过Hashtable类来实现的。它可以存储任意类型的键和值,并且键是唯一的。
下面是一个使用哈希表的示例:
Hashtable hashtable = new Hashtable();
// 添加键值对
hashtable.Add("key1", "value1");
hashtable.Add("key2", "value2");
hashtable.Add("key3", "value3");
// 访问值
string value = (string)hashtable["key1"];
Console.WriteLine(value); // 输出:value1
// 修改值
hashtable["key2"] = "new value";
// 删除键值对
hashtable.Remove("key3");
// 遍历哈希表
foreach (DictionaryEntry entry in hashtable)
{
string key = (string)entry.Key;
string value = (string)entry.Value;
Console.WriteLine("Key: " + key + ", Value: " + value);
}
哈希表在C#中被广泛应用于需要高效地存储和访问键值对的场景,例如缓存、索引和字典等。