C#中的字典(Dictionary)是一种使用哈希表实现的数据结构,它允许通过键值对(key-value pair)来存储和访问数据。在Unity中,我们可以使用Dictionary
类来快速地存储和查找键值对,而无需手动实现哈希表的细节。
下面介绍一些常用的字典方法及其示例:
- 添加键值对:使用Add方法或索引器来添加键值对。
// 创建一个空字典 Dictionary<string, int> dict = new Dictionary<string, int>(); // 使用Add方法添加键值对 dict.Add("apple", 1); dict.Add("banana", 2); dict.Add("orange", 3); // 使用索引器添加键值对 dict["grape"] = 4; // 输出字典中所有键值对 foreach (var item in dict) { Console.WriteLine(item.Key + ": " + item.Value); }
输出结果:
apple: 1 banana: 2 orange: 3 grape: 4
- 访问键值对:使用索引器或TryGetValue方法来访问键值对。
// 创建一个包含键值对的字典 Dictionary<string, int> dict = new Dictionary<string, int> { { "apple", 1 }, { "banana", 2 }, { "orange", 3 } }; // 使用索引器访问键值对 Console.WriteLine(dict["apple"]); // 使用TryGetValue方法访问键值对 int value; if (dict.TryGetValue("banana", out value)) { Console.WriteLine(value); }
输出结果:
1 2
- 移除键值对:使用Remove方法来移除指定键的键值对。
// 创建一个包含键值对的字典 Dictionary<string, int> dict = new Dictionary<string, int> { { "apple", 1 }, { "banana", 2 }, { "orange", 3 } }; // 移除指定键的键值对 dict.Remove("banana"); // 输出字典中所有键值对 foreach (var item in dict) { Console.WriteLine(item.Key + ": " + item.Value); }
输出结果:
apple: 1 orange: 3
- 检查是否包含指定键:使用ContainsKey方法来检查是否包含指定键。
// 创建一个包含键值对的字典 Dictionary<string, int> dict = new Dictionary<string, int> { { "apple", 1 }, { "banana", 2 }, { "orange", 3 } }; // 检查是否包含指定键 if (dict.ContainsKey("banana")) { Console.WriteLine("包含键 banana"); }
输出结果:
包含键 banana
- 检查是否包含指定值:使用ContainsValue方法来检查是否包含指定值。
// 创建一个包含键值对的字典 Dictionary<string, int> dict = new Dictionary<string, int> { { "apple", 1 }, { "banana", 2 }, { "orange", 3 } }; // 检查是否包含指定值 if (dict.ContainsValue(2)) { Console.WriteLine("包含值 2"); }
输出结果:
包含