C# Dictionary的用法

在C#中,Dictionary的主要用途是提供快速的基于兼职的元素查找。Dictionary的结构一般是这样的:Dictionary<[key], [value]> ,它包含在System.Collections.Generic名空间中。在使用Dictionary前,你必须对它的键类型和值类型进行声明。

要使用Dictionary集合,需要导入C#泛型命名空间

System.Collections.Generic(程序集:mscorlib)

Dictionary的描述

1、从一组键(Key)到一组值(Value)的映射,每一个添加项都是由一个值及其相关连的键组成

2、任何键都必须是唯一的

3、键不能为空引用null(VB中的Nothing),若值为引用类型,则可以为空值

4、Key和Value可以是任何类型(string,int,custom class 等)

 Dictionary常用用法:以 key 的类型为 int , value的类型为string 为例

 1、创建及初始化

Dictionary<int,string>myDictionary=newDictionary<int,string>();

 2、添加元素

myDictionary.Add(1,"C#");
myDictionary.Add(2,"C++");
myDictionary.Add(3,"ASP.NET");
myDictionary.Add(4,"MVC");

 3、通过Key查找元素

if(myDictionary.ContainsKey(1))
{
    Console.WriteLine("Key:{0},Value:{1}","1", myDictionary[1]);
 }

 4、通过KeyValuePair遍历元素

foreach(KeyValuePair<int,string>kvp in myDictionary)
...{
        Console.WriteLine("Key = {0}, Value = {1}",kvp.Key, kvp.Value);
}

5、仅遍历键 Keys 属性

Dictionary<int,string>.KeyCollection keyCol=myDictionary.Keys;
foreach(intkeyinkeyCol)
...{
        Console.WriteLine("Key = {0}", key);
}

6、仅遍历值 Valus属性

Dictionary<int,string>.ValueCollection valueCol=myDictionary.Values;
foreach(stringvalueinvalueCol)
...{
        Console.WriteLine("Value = {0}", value);
}

7、通过Remove方法移除指定的键值

myDictionary.Remove(1);
if(myDictionary.ContainsKey(1))
...{
  Console.WriteLine("Key:{0},Value:{1}","1", myDictionary[1]);
}
else
{
    Console.WriteLine("不存在 Key : 1"); 
 }

其它常见属性和方法的说明:

Comparer获取用于确定字典中的键是否相等的 IEqualityComparer
Count获取包含在 Dictionary中的键/值对的数目
Item获取或设置与指定的键相关联的值
Keys获取包含 Dictionary中的键的集合
Values获取包含 Dictionary中的值的集合
Add将指定的键和值添加到字典中
Clear从 Dictionary中移除所有的键和值
ContainsKey确定 Dictionary是否包含指定的键
ContainsValue确定 Dictionary是否包含特定值
GetEnumerator返回循环访问 Dictionary的枚举数
GetType获取当前实例的 Type (从 Object 继承)
Remove从 Dictionary中移除所指定的键的值
ToString返回表示当前 Object的 String (从 Object 继承)
TryGetValue获取与指定的键相关联的值
阅读剩余 53%

作者:terry,如若转载,请注明出处:https://www.web176.com/csharp/13945.html

(0)
打赏 支付宝 支付宝 微信 微信
terryterry
上一篇 2023年3月22日 上午10:02
下一篇 2023年3月23日 下午12:06

相关推荐

发表回复

登录后才能评论