C#泛型集合之——字典

字典基础

1.概述:字典是一组映射,更准确的说应该是一个函数。因为它的键值不能重复,而值可以重复。其逻辑实质也是顺序型的

2.操作:
(1)创建: Dictionary<键类型,值类型> 字典名 =new Dictionary<键类型,值类型>();    //值和键类型除了基础类型,也可以数组,列表等复杂类型。

Dictionary<键类型,值类型> 字典名 =new Dictionary<键类型,值类型>()

{

{第一组键值},{第二组键值}……    //直接初始化

};

(2)添加元素:字典名.Add(键值,值);

 // 如果新添加的元素的键值重复,则在运行时会报错。这是可以用 字典名.TryAdd(键值,值); 进行判断。注意这个方法的返回值是bool型

(3)取值与赋值

取值: 字典名[键值]; 

//如果害怕字典中不存在所要取值的键,则可以用 字典名.TryGetValue(键值,out 输出参数 ); 进行判断,返回值为bool型。在这里要注意输出参数则代表了Value,不要忘记out

赋值: 字典名[键值]=新值;

(1)    删除元素: 字典名.Remove(键值);

(2)    显示字典的全长: 字典名.Count();  //加不加圆括号都行

(3)    判断键是否在字典内:字典名.ContainsKey(键值);//返回类型为bool型

(4)    判断值是否在字典内:字典名.ContainsValue(值); //返回类型为boo型

(5)    通过键值对遍历字典:foreach(KeyValuePair 变量名 in 字典名){;}

(9)获取哈希表建的集合://以此遍历哈希表的键值

Dictionary<键类型,值类型>.KeyCollection 变量名 = 字典名.Keys;

(6)    获取哈希表值的集合://以此遍历哈希表的值

Dictionary<键类型,值类型>.ValueCollection 变量名 = 字典名.Value;

//(8) (9) 两种遍历方法还可以简化为:

       foreach(var I in 字典名.Keys/Values) {;}

(7)    清空字典: 字典名.Clear();

3.排序字典:Sorted Dictionary<键类型,值类型>与字典的操作大体相同,不同处在于其值按键升序排序。

你可能感兴趣的:(C#泛型集合之——字典)