当前位置:   article > 正文

C#编程——字典_c#如果字典的键是值类型,那么在字典执行一些操作(如查找、添加或删除键值对)时,可

c#如果字典的键是值类型,那么在字典执行一些操作(如查找、添加或删除键值对)时,可

什么是字典?

C# 中的字典(Dictionary)是一种集合类型,用于存储键-值对。它提供了高效的查找操作,通过使用键来访问对应的值。在 C# 中,字典类被实现为泛型类型 Dictionary<TKey, TValue>,其中 TKey 是键的类型,TValue 是值的类型。

创建字典

可以使用 new 关键字来创建一个新的字典对象,例如:

Dictionary<string, int> studentGrades = new Dictionary<string, int>();

添加和访问元素:

使用 Add 方法可以向字典中添加新的键-值对,使用方括号语法或 TryGetValue 方法可以访问字典中的元素,例如:

  1. studentGrades.Add("Alice", 90);
  2. int grade = studentGrades["Alice"];
  3. int value;
  4. if (studentGrades.TryGetValue("Alice", out value))
  5. {
  6. // 存在键为 "Alice" 的元素
  7. }

更新元素:

如果指定的键已经存在于字典中,可以直接通过赋值语句来更新对应的值,例如:

studentGrades["Alice"] = 95;

移除元素:

使用 Remove 方法可以从字典中移除指定的键-值对,例如:

studentGrades.Remove("Alice");

遍历字典:

可以使用 foreach 循环遍历字典中的键-值对,例如:

  1. foreach (KeyValuePair<string, int> kvp in studentGrades)
  2. {
  3. string name = kvp.Key;
  4. int grade = kvp.Value;
  5. // 使用键和值进行操作
  6. }

字典的性能:

字典在内部使用哈希表来实现快速的查找操作,因此可以在 O(1) 的时间复杂度内访问元素。但是,字典并不保持元素的顺序。

注意事项:

字典中的键必须是唯一的,如果尝试向字典中添加重复的键,则会引发异常。如果需要存储多个具有相同键的值,可以考虑使用其他集合类型,例如 List<T>HashSet<T>

示例

  1. using System;
  2. using System.Collections.Generic;
  3. class Program
  4. {
  5. static void Main()
  6. {
  7. // 创建一个字典
  8. Dictionary<string, int> studentGrades = new Dictionary<string, int>();
  9. // 添加键值对
  10. studentGrades.Add("Alice", 90);
  11. studentGrades.Add("Bob", 85);
  12. studentGrades.Add("Charlie", 92);
  13. // 访问字典中的值
  14. int aliceGrade = studentGrades["Alice"];
  15. Console.WriteLine("Alice's grade: " + aliceGrade);
  16. // 修改字典中的值
  17. studentGrades["Bob"] = 88;
  18. // 遍历字典
  19. foreach (KeyValuePair<string, int> kvp in studentGrades)
  20. {
  21. Console.WriteLine(kvp.Key + ": " + kvp.Value);
  22. }
  23. // 检查字典中是否包含指定的键
  24. bool containsBob = studentGrades.ContainsKey("Bob");
  25. Console.WriteLine("Contains Bob? " + containsBob);
  26. // 删除字典中的键值对
  27. studentGrades.Remove("Charlie");
  28. // 清空字典
  29. studentGrades.Clear();
  30. }
  31. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/正经夜光杯/article/detail/977675
推荐阅读
相关标签
  

闽ICP备14008679号