C# hashtable
时间: 2024-12-15 14:10:51 浏览: 2
C#中的Hashtable是一个基于键值对(Key-Value)存储数据的集合类。它属于System.Collections命名空间,提供了快速查找、添加和删除数据的功能。Hashtable中的每个元素都是一个键值对,键(Key)用于唯一标识值(Value),并且键必须是唯一的。
以下是Hashtable的一些主要特点和使用方法:
1. **创建Hashtable**:
```csharp
Hashtable ht = new Hashtable();
```
2. **添加元素**:
```csharp
ht.Add("Name", "John Doe");
ht.Add("Age", 30);
ht.Add("City", "New York");
```
3. **访问元素**:
```csharp
Console.WriteLine(ht["Name"]); // 输出: John Doe
Console.WriteLine(ht["Age"]); // 输出: 30
```
4. **遍历Hashtable**:
```csharp
foreach (DictionaryEntry entry in ht)
{
Console.WriteLine(entry.Key + ": " + entry.Value);
}
```
5. **检查键是否存在**:
```csharp
if (ht.ContainsKey("Name"))
{
Console.WriteLine("Name exists!");
}
```
6. **移除元素**:
```csharp
ht.Remove("City");
```
7. **清空Hashtable**:
```csharp
ht.Clear();
```
Hashtable的优点包括快速的查找速度(平均时间复杂度为O(1))和灵活的键值对存储方式。然而,Hashtable也有一些缺点,比如线程不安全(需要手动同步)和相对较高的内存开销。
阅读全文