字典
字典是C#中的一种数据结构,用于存储键值对Dictionary<key, value>,key为键,value为值。字典中的键必须唯一,但值可以重复。
1.创建字典
Dictionary<string, int> dict = new Dictionary<string, int>();
2.添加字典
dic.Add("11", 1);//第一种写法 dic["22"] = 1;//第二种写法
3.获取字典值
int value = dics["11"];//第一种写法 bool exists = dics.TryGetValue("22", out int value2);//第二种写法
4.更新值
dics["11"] = 33;
5.删除键值对
dics.Remove("11");
6.判断键是否存在
bool key = dics.ContainsKey("11");
7.遍历字典
foreach (KeyValuePair<string, int> kvp in dics) { string key1 = kvp.Key; int value1 = kvp.Value; }
注意:
在 C# 的字典中,键的类型是有限制的。键必须是可哈希的(hashable),也就是说,键的类型必须实现了 GetHashCode()
方法,并且在比较相等性时通过 Equals()
方法。
- 基本数据类型:例如整数 (
int
)、字符串 (string
)、浮点数 (double
) 等。 - 枚举类型:定义了自己的
GetHashCode()
和Equals()
方法。 - 自定义类:自定义类需要重写
GetHashCode()
和Equals()
方法以提供正确的对象比较和哈希码生成逻辑。
值的类型可以是任意类型,包括基本类型、自定义类、结构体等。
字典中的键值对是无序的,如果你需要对键值对进行排序或按特定顺序访问,可以考虑使用排序字典 (SortedDictionary<TKey, TValue>
) 或有序集合 (SortedSet<T>
)。