在C#中,Hashtable是一个基于键值对(key-value pair)的数据结构,它允许你通过键来存储和检索值。Hashtable是线程不安全的,因此在多线程环境下使用时需要注意同步问题。下面是一些关于如何在C#中使用Hashtable的基本示例:
using System.Collections;
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"
bool containsKey = hashtable.ContainsKey("key1");
Console.WriteLine(containsKey); // 输出 true
hashtable.Remove("key1");
foreach (DictionaryEntry entry in hashtable)
{
Console.WriteLine($"Key: {entry.Key}, Value: {entry.Value}");
}
注意:Hashtable的键应该是不可变的类型,例如字符串、整数等。如果你尝试使用可变类型(如列表)作为键,可能会遇到问题。在这种情况下,可以考虑使用Dictionary<TKey, TValue>
代替Hashtable。