阅读量:2
在C#中,KeyValuePair是一种用于存储键值对的数据结构,而Dictionary则是使用KeyValuePair来存储数据的泛型集合。
要使用KeyValuePair,首先需要声明和初始化一个KeyValuePair对象,可以使用构造函数或者直接赋值的方式进行初始化。下面是两种常见的初始化方式:
KeyValuePair<string, int> kvp1 = new KeyValuePair<string, int>("key1", 1); KeyValuePair<string, int> kvp2 = new KeyValuePair<string, int> { Key = "key2", Value = 2 };
在这个例子中,我们声明了两个KeyValuePair对象,一个使用构造函数初始化,另一个使用属性赋值的方式初始化。它们分别存储了一个字符串键和一个整数值。
接下来,可以使用Key和Value属性来访问KeyValuePair对象中的键和值:
string key = kvp1.Key; int value = kvp1.Value; Console.WriteLine($"Key: {key}, Value: {value}");
在这个例子中,我们分别将键和值赋值给了两个变量,并将它们打印出来。
而Dictionary是一个使用KeyValuePair作为元素的泛型集合,它可以存储多个键值对。下面是一个使用Dictionary的例子:
Dictionary<string, int> dict = new Dictionary<string, int>(); dict.Add("key1", 1); dict["key2"] = 2; foreach (KeyValuePair<string, int> kvp in dict) { Console.WriteLine($"Key: {kvp.Key}, Value: {kvp.Value}"); }
在这个例子中,我们首先创建了一个空的Dictionary对象。然后,通过Add方法和索引器的方式向字典中添加键值对。最后,使用foreach循环遍历字典中的所有键值对,并将它们打印出来。
总结起来,KeyValuePair用于存储单个键值对,而Dictionary则是使用KeyValuePair来存储多个键值对的集合。