C# Dictionary的使用

在 C# 中,Dictionary 是一种常用的数据结构,用于存储键值对。以下是一些常见的 Dictionary 操作:

  1. 创建和初始化一个 Dictionary

可以使用以下代码创建并初始化一个 Dictionary

cs 复制代码
Dictionary<string, int> dict = new Dictionary<string, int>() 
{ 
{"apple", 1}, 
{"banana", 2},
{"orange", 3} 
};

这个 Dictionary 包含三个键值对,分别是 "apple" 对应的值为 1,"banana" 对应的值为 2,"orange" 对应的值为 3。

  1. 添加和删除键值对

你可以使用以下方法来添加或删除键值对:

cs 复制代码
// 添加键值对 
dict.Add("pear", 4); 

// 删除键值对 
dict.Remove("banana");
  1. 访问和修改元素

通过指定键名,你可以访问和修改 Dictionary 中的元素:

复制代码
/ 访问元素 int value = dict["apple"]; // 修改元素 dict["orange"] = 5; 

需要注意的是,如果指定的键名不存在于 Dictionary 中,访问该键将会抛出异常。因此,在程序中应该先使用 .ContainsKey() 方法检查是否存在该键名:

cs 复制代码
if (dict.ContainsKey("apple")) { int value = dict["apple"]; // 访问元素 } 
  1. 遍历 Dictionary

你可以使用 foreach 循环遍历 Dictionary

cs 复制代码
foreach (KeyValuePair<string, int> kvp in dict) 
{ 
Console.WriteLine("Key = {0},
 Value = {1}", 
kvp.Key, 
kvp.Value); 
}

以上代码将会输出这个 Dictionary 中所有键值对的键名和对应的值。

  1. 其他方法

除了上述方法之外,Dictionary 还提供了一些其他常用的方法:

cs 复制代码
// 获取键的集合 
ICollection<string> keys = dict.Keys; 

// 获取值的集合 
ICollection<int> values = dict.Values; 

// 获取元素数量 
int count = dict.Count; 

// 清空 
Dictionary dict.Clear();

需要注意的是,在多线程环境下使用 Dictionary 时,需要采取额外的同步措施,以避免出现竞争条件。

相关推荐
csdn_aspnet3 小时前
C# 求n边凸多边形的对角线数量(Find number of diagonals in n sided convex polygon)
开发语言·算法·c#
武藤一雄7 小时前
C# 设计模式大全(第一弹|7种)
microsoft·设计模式·微软·c#·.net·.netcore
格林威8 小时前
Baumer相机锂电池极片裁切毛刺检测:防止内部短路的 5 个核心方法,附 OpenCV+Halcon 实战代码!
开发语言·人工智能·数码相机·opencv·计算机视觉·c#·视觉检测
向上的车轮9 小时前
熟悉C#如何转TypeScript——SDK与包引用
开发语言·typescript·c#
CSharp精选营10 小时前
Dispose 不释放?C# 资源泄漏的 3 种隐蔽场景排查
c#·资源泄漏
unicrom_深圳市由你创科技12 小时前
LabVIEW和C#在工业控制中的应用差异是什么?
fpga开发·c#·labview
唐青枫13 小时前
C#.NET Consul + Steeltoe 深入解析:服务注册发现、健康检查与微服务接入
c#·.net
DowneyJoy13 小时前
【Unity3D补充知识点】常用数据结构分析-集合(List<T>)
数据结构·unity·c#·list
格林威13 小时前
Baumer相机铝型材表面划伤长度测量:实现损伤量化评估的 5 个关键技术,附 OpenCV+Halcon 实战代码!
开发语言·人工智能·数码相机·opencv·计算机视觉·c#·工业相机
DowneyJoy14 小时前
【Unity3D补充知识点】常用数据结构分析-数组(Array)
数据结构·unity·c#