举例c#dictionary用法
时间: 2024-09-14 17:02:00 浏览: 44
在C#中,Dictionary是一个存储键值对的集合,它提供了快速的查找能力。Dictionary使用泛型类实现,这意味着你可以指定键和值的类型。以下是一个使用Dictionary的基本示例:
```csharp
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
// 创建一个键为字符串,值为整数的Dictionary
Dictionary<string, int> ages = new Dictionary<string, int>();
// 添加元素
ages.Add("Alice", 24);
ages.Add("Bob", 25);
// 检查某个键是否存在于Dictionary中
if (ages.ContainsKey("Alice"))
{
Console.WriteLine($"Alice的年龄是:{ages["Alice"]}");
}
// 更新一个已存在的键的值
ages["Alice"] = 26;
// 遍历Dictionary
foreach (KeyValuePair<string, int> kvp in ages)
{
Console.WriteLine($"键:{kvp.Key}, 值:{kvp.Value}");
}
// 尝试添加一个已经存在的键将会引发异常,除非使用TryAdd方法
// ages.Add("Alice", 27); // 这会引发异常
// 使用TryGetValue方法安全地尝试获取值
int age;
if (ages.TryGetValue("Bob", out age))
{
Console.WriteLine($"Bob的年龄是:{age}");
}
else
{
Console.WriteLine("Bob不在字典中");
}
// 删除一个键值对
ages.Remove("Alice");
// 清空Dictionary
ages.Clear();
// 检查Dictionary是否为空
if (ages.Count == 0)
{
Console.WriteLine("字典是空的");
}
}
}
```
在这个例子中,我们首先创建了一个名为`ages`的Dictionary实例,键是字符串类型,值是整数类型。然后,我们使用`Add`方法添加了两个键值对,使用`ContainsKey`来检查键是否存在,用索引器`[]`来更新和检索值,并且展示了如何安全地尝试获取值的`TryGetValue`方法。我们还演示了如何遍历字典、尝试添加已存在的键值对时可能会引发异常、如何删除键值对以及清空整个字典。
阅读全文