C#字典
一、基本概念
字典表示一种非常复杂的数据结构,这种数据结构允许按照某个键来访问元素。字典也称之为映射或散列表。
在结构上,字典和有序列表非常相似,只不过字典没有排序功能。
字典中的数据也是键-值对。每个键对应一个值,键之间不能重复,值可以重复。
static void Main(string[] args)
{
var myDictionary = new Dictionary<string, int>() //常见字典并使用初始化器进行初始化
{
{"A",1},
{"B",2},
{"C",3},
{"D",4}
};
//添加元素
myDictionary.Add("E",5);
//获取字典元素个数
Console.WriteLine("现在字典内的元素个数为:"+myDictionary.Count);
//取值赋值
int val = myDictionary["D"]; //取值
myDictionary["D"] = 100; //赋值
//通过key查找元素
if (myDictionary.ContainsKey("A"))
{
Console.WriteLine("key:{0},value:{1}","A", myDictionary["A"]);
Console.WriteLine(myDictionary["A"]);
}
//通过KeyValuePair遍历元素
foreach (KeyValuePair<string,int>kvp in myDictionary)
{
Console.WriteLine("key={0},value={1}", kvp.Key, kvp.Value);
}
//获取键集合
foreach (string s in myDictionary.Keys)
{
Console.WriteLine(s);
}
//获取值集合
foreach (int i in myDictionary.Values)
{
Console.WriteLine(i);
}
//判断键是否存在
if (myDictionary.ContainsKey("B")) // True
{
Console.WriteLine("Key = \"B\"存在");
}
//按照键获取值
int _value = 0;
if (myDictionary.TryGetValue("C", out _value))
{
Console.WriteLine("查找结果:{0}", _value);
}
else
{
Console.WriteLine("查找失败");
}
Console.Read();
}