博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C#中的Dictionary简介
阅读量:5858 次
发布时间:2019-06-19

本文共 3956 字,大约阅读时间需要 13 分钟。

简介 在C#中,Dictionary提供快速的基于兼职的元素查找。当你有很多元素的时候可以使用它。它包含在System.Collections.Generic名空间中。 在使用前,你必须声明它的键类型和值类型。 详细说明 必须包含名空间System.Collection.Generic Dictionary里面的每一个元素都是一个键值对(由二个元素组成:键和值) 键必须是唯一的,而值不需要唯一的 键和值都可以是任何类型(比如:string, int, 自定义类型,等等) 通过一个键读取一个值的时间是接近O(1) 键值对之间的偏序可以不定义 创建和初始化一个Dictionary对象 Dictionary myDictionary = new Dictionary(); 添加键 static void Main(string[] args) {   Dictionary d = new Dictionary();   d.Add("C#", 2);   d.Add("C", 0);   d.Add("C++", -1); } 查找键 static void Main(string[] args) {    Dictionary d = new Dictionary();    d.Add("C#", 2);    d.Add("VB", 1);    d.Add("C", 0);    d.Add("C++", -1); if (d.ContainsKey("VB")) // True    { int p = d["VB"];       Console.WriteLine(p);      }  if (d.ContainsKey("C"))      { int p1 = d["C"];        Console.WriteLine(p1);      }  } 删除元素 static void Main(string[] args) {    Dictionary d = new Dictionary();    d.Add("C#", 2);    d.Add("VB", 1);    d.Add("C", 0);    d.Add("C++", -1);    d.Remove("C");        d.Remove("VB");  } 使用ContainsValue查找值的存在 static void Main(string[] args) {     Dictionary d = new Dictionary();     d.Add("C#", 2);     d.Add("VB", 1);     d.Add("C", 0);     d.Add("C++", -1); if (d.ContainsValue(1))     {         Console.WriteLine("VB");     } if (d.ContainsValue(2))     {        Console.WriteLine("C#");     } if (d.ContainsValue(0))     {        Console.WriteLine("C");     } if (d.ContainsValue(-1))       {           Console.WriteLine("C++");       }                } KeyNotFoundException 如果你尝试读取字典中一个不存在的键,那么你会得到一个KeyNotFoundException。所有在读取一个键之前,你必须先使用ContainKey来核对键是否存在字典中。 基于int键的Dictionary static void Main(string[] args) {    Dictionary d = new Dictionary();    d.Add(1000, "Planet");    d.Add(2000, "Stars"); // lookup the int in the dictionary.    if (d.ContainsKey(1000))    {         Console.WriteLine(true);    }       Console.ReadLine(); } 排序字典SortedDictionary 在排序字典中,当添加元素时字典必须进行排序,所以插入的速度会比较慢点。但是因为元素是有序存储的,所以元素的查找可以使用二分搜索等一些效率更高的搜索。 总结 在这篇文章中,简要地介绍C#中的Dictionary的使用。动手写写吧~ using System;   using System.Collections.Generic;   class DictionaryDemo   {   static void Main(string[] args)       {           DictionaryDemo001();           Console.ReadLine();           DictionaryDemo002();           Console.ReadLine();           DictionaryDemo003();           Console.ReadLine();       }   ///    /// 一般用法   ///      static void DictionaryDemo001()       {           Dictionary
dict = new Dictionary
(); dict.Add(1, "111"); dict.Add(2, "222"); //判断是否存在相应的key并显示 if (dict.ContainsKey(2)) { Console.WriteLine(dict[2]); } //遍历Keys foreach (var item in dict.Keys) { Console.WriteLine("Key:{0}", item); } //遍历Values foreach (var item in dict.Values) { Console.WriteLine("value:{0}", item); } //遍历整个字典 foreach (var item in dict) { Console.WriteLine("key:{0} value:{1}", item.Key, item.Value); } } ///
/// 参数为其它类型 /// static void DictionaryDemo002() { Dictionary
dict = new Dictionary
(); dict.Add("1", "1,11,111".Split(',')); dict.Add("2", "2,22,222".Split(',')); Console.WriteLine(dict["2"][2]); } ///
/// 调用自定义类 /// static void DictionaryDemo003() { Dictionary
dict = new Dictionary
(); for (int i = 0; i < 10; i++) { yongfa365 y = new yongfa365(); y.UserCode = i; y.UserName = "www.yongfa365.com " + i.ToString(); dict.Add(i, y); } foreach (var item in dict) { Console.WriteLine("{0} One:{1} UserName:{2}", item.Key, item.Value.UserCode, item.Value.UserName); } } } class yongfa365 { public int UserCode { get; set; } public string UserName { get; set; } }

 

转载于:https://www.cnblogs.com/wifi/articles/2419029.html

你可能感兴趣的文章
tmux/screen里面如何用鼠标滚轮来卷动窗口内容
查看>>
根据不同需求跳转不同Activity的另外一种写法
查看>>
服务器带宽问题记录
查看>>
【案例学习】美国大都会人寿保险公司的 Docker EE 实践
查看>>
【jQuery】清空表单内容
查看>>
网站设计开发维护基本流程
查看>>
2.4. PDF
查看>>
关于Web页中的色彩反转遇到一点问题
查看>>
【spring boot logback】spring boot中logback日志乱码问题
查看>>
[Android]使用Gradle提交自己开源Android库到Maven中心库
查看>>
【★】假如人类使用16进制
查看>>
Selenium2+python自动化62-jenkins持续集成环境搭建
查看>>
【Python】获取主机ip的方式
查看>>
最好的关系,是彼此成就
查看>>
【脚本】如何确保应用程序的唯一性
查看>>
安装ORACLE 10G时,报告操作系统版本(operating system version)检查失败之案例一
查看>>
php字符串常用函数
查看>>
MathType如何插入竖直线
查看>>
感恩和情怀
查看>>
高效、便捷、一站式日志解决方案--阿里云日志服务
查看>>