本文主要是介绍C#中的 Dictionary常用操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
《C#中的Dictionary常用操作》C#中的DictionaryTKey,TValue是用于存储键值对集合的泛型类,允许通过键快速检索值,并且具有唯一键、动态大小和无序集合的特性,常用操作包括添...
基本概念
Dictionary<TKey, TValue>
是C#中用于存储键值对集合的泛型类,属于System.Collections.Generic
命名空间。它允许使用键(Key
)来访问与其关联的值(Value
)。其中,TKey表示字典中键的类型,TValue表示字典中值的类型。
Dictionary的基本结构
- 键(Key):唯一标识集合中的一个元素。键是唯一的,不能有重复。
- 值(Value):与键相关联的数据。值可以是任意类China编程型,并且可以有重复。
- 键值对(KeyValuePair):键和值的组合,表示Dictionary中的一个元素。
Dictionary的主要特性
- 快速访问:通过键可以快速检索到对应的值,平均时间复杂度接近O(1),因为
Dictionary<TKey,TValue>
类是作为哈希表实现。 - 唯一键(Key):每个键在Dictionary中都是唯一的,不能重复。
- 动态大小:Dictionary的大小可以动态调整,当元素数量超过容量时,它会自动扩容。
- 无序集合:Dictionary中的元素是无序的,不能通过索引来访问它们。
Dictionary的常用操作
以下是C#中Dictionary的常用操作完整代码,其中包括添加元素、访问元素、修改元素、删除元素、检查键或值是否存在,以及遍历元素:
public static void DictionaryOperation() { //创建一个Dictionary来存储学生学号ID和姓名 Dictionary<int, string> studentDic = new Dictionary<int, string>(); #region 添加元素 // Add方法(键必须唯一) studentDic.Add(1, "大姚"); studentDic.Add(2, "小袁"); studentDic.Add(3, "Edwin"); // 索引器语法(键不存在时添加,存在时更新) studentDic[4] = "Charlie"; studentDic[5] = "追逐时光者"; // 安全添加(避免异常) bool isAdded = studentDic.TryAdd(6, "小明"); // 返回 false,因键已存在 #endregion #region 访问元素 // 直接访问(键必须存在,否则会有异常) var currentUserName = studentDic[1XIsyvi]; Console.WriteLine($"当前学生姓名: {currentUserName}"); // 安全www.chinasem.cn访问(避免异常) if (studentDic.TryGetValue(5, outvar getUserName)) { Console.WriteLine($"UserName:{getUserName}"); } else { Console.WriteLine("当前学生China编程ID不存在"); } #endregion #region // 修改元素 studentDic[2] = "大西瓜"; Console.WriteLine($"修改后的名称:{studentDic[2]}"); #endregion #region 删除元素 // 删除元素 bool isRemoved = studentDic.Remove(3); Console.WriteLine($"删除结果:{isRemoved}"); #endregion #region 检查键或值是否存在 // 检查键是否存在 if (studentDic.ContainsKey(1)) { Console.WriteLine("存在"); } else { Console.WriteLine("不存在"); } bool isExistcontainsValue = studentDic.ContainsValue("追逐时光者"); Console.WriteLine($"是否存在:{isExistconthttp://www.chinasem.cnainsValue}"); #endregion #region 遍历元素 // 遍历元素 foreach (KeyValuePair<int, string> student in studentDic) { Console.WriteLine($"ID: {student.Key}, Name: {student.Value}"); } // 使用键的枚举器 foreach (var key in studentDic.Keys) { Console.WriteLine($"Key: {key}, Value: {studentDic[key]}"); } // 使用值的枚举器 foreach (varvaluein studentDic.Values) { // 注意:这种方式不能直接获取键,只能获取值 Console.WriteLine($"Value: {value}"); } #endregion }
参考文章
- https://learn.microsoft.com/zh-cn/dotnet/api/system.collections.generic.dictionary-2?view=net-9.0
到此这篇关于C#中的 Dictionary常用操作的文章就介绍到这了,更多相关C# Dictionary内容请搜索编程China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持China编程(www.chinasem.cn)!
这篇关于C#中的 Dictionary常用操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!