C#Dictionary的使用

Dictionary<TKey,TValue>:表示键和值的集合

   TKey:字典中的键的类型。
   TValue:字典中的值的类型。

初始化:
Dictionary<int, string> DIC = new Dictionary<int, string>() { { 5, "科" }, { 7, "种" }, { 4, "目" }, { 2, "门" }, { 1, "界" }, { 3, "纲" }, { 6, "属" }, };
Dictionary<int, string> DIC1 = new Dictionary<int, string> { { 1, "界" }, { 2, "门" }, { 3, "纲" }, { 4, "目" }, { 5, "科" }, { 6, "属" }, { 7, "种" } };
Dictionary<int, string> DIC2 = new Dictionary<int, string>(); //实例化对象
添加元素:
//添加元素
DIC2.Add(1, "界");
DIC2.Add(2, "门");
if (DIC2.ContainsKey(1)) //是否包含指定键
{
    //包含了键1
}
if (DIC2.ContainsValue("界"))//是否包含指定值
{
    //包含了值"界"
}

注意:其中键(TKey)不能重复,否则引发异常“System.ArgumentException:已添加了具有相同键的项。”

TValue Dictionary<TKey,TValue>[Key] 根据键获取指定值:
string a=DIC[1];
  使用索引器来取值时,如果键不存在就会引发异常KeyNotFoundException。
排序:

在初始化DIC时,顺序是乱的,现在要按键大小排序

Dictionary<int, string> DIC2 = new Dictionary<int, string>(); //实例化对象
var result = from item in DIC orderby item.Key select item;
foreach (KeyValuePair<int, string> it in result)
{
   DIC2.Add(it.Key,it.Value);
}
DIC = DIC2;
获取值或键的集合:

方式一:

Dictionary<int, string>.ValueCollection values = DIC.Values;//获取值的集合
Dictionary<int, string>.KeyCollection keys = DIC.Keys; 
foreach (string a in values)
{
}

方式二:

foreach (string a in DIC.Values)
{
}

阅读更多
版权声明: https://blog.csdn.net/qq_33459369/article/details/79957210
个人分类: C#
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭