在工作中有时候会用到Dictionary,由于自己之前没用过,参考了一下前人和先辈的实践,仿照着写了一个Test,第一次用还不是很熟练,要多实践练习才能用的得心应手,写代码重在敲键盘,以此为诫。(主要注意下这个Dictionary的key和value以及添加数据方式)

写了三个方法和一个Student类。

 namespace DictionaryTest
{
class Program
{
static void Main(string[] args)
{
DicSample1();
DicSample2();
DicSample3();
Console.ReadLine();
} public static void DicSample1()
{
Dictionary<string, string> dic = new Dictionary<string, string>();
if (dic.ContainsKey("Item1") == false)
{
dic.Add("Item1", "ZheJiang");
}
if (dic.ContainsKey("Item2") == false)
{
dic.Add("Item2", "ShangHai");
}
else
{
dic["Item2"] = "ShangHai";
}
if (dic.ContainsKey("Item3") == false)
{
dic.Add("Item3", "BeiJing");
}
if (dic.ContainsKey("Item1"))
{
Console.WriteLine("Output:" + dic["Item1"]);
}
//遍历key
foreach (var key in dic.Keys)
{
Console.WriteLine("Output key :{0}" , dic.Keys);
}
//遍历value
foreach (var value in dic.Values)
{
Console.WriteLine("Output value :{0}", dic.Values);
} foreach (var d in dic)
{
Console.WriteLine("Output key:{0}, value:{1}", d.Key, d.Value);
}
} public static void DicSample2()
{
Dictionary<string, string[]> dics = new Dictionary<string, string[]>();
string[] ZheJiang = { "Hangzhou", "Huzhou", "Taizhou", "Wenzhou", "Quzhou" };
string[] AnHui = { "Hefei", "Wuhu", "Huainan", "Fuyang", "Huangshan" };
dics.Add("ZJ", ZheJiang);
dics.Add("AH", AnHui);
for (int i = ; i <= ZheJiang.Count() - ; i++)
{ Console.WriteLine("Output:" + dics["ZJ"][i]); }
for (int j = ; j < AnHui.Count() - ; j++)
{ Console.WriteLine("Output:" + dics["AH"][j]); }
} public static void DicSample3()
{
Dictionary<string, Student> dics = new Dictionary<string, Student>();
Student student = null;
for (int i = ; i < ; i++)
{
student = new Student();
student.Num = i.ToString();
student.Name = "Student Name" + i.ToString();
dics.Add(i.ToString(), student);
}
foreach (var stuItem in dics)
{
Console.WriteLine("Output: key{0},Num{1},Name{2}", stuItem.Key, stuItem.Value.Num, stuItem.Value.Name);
}
}
}
public class Student
{
public string Name { get; set; }
public string Num { get; set; }
}
}

以下是运行结果:

C#中的Dictionary的使用的更多相关文章

  1. JavaScript基础精华03(String对象,Array对象,循环遍历数组,JS中的Dictionary,Array的简化声明)

    String对象(*) length属性:获取字符串的字符个数.(无论中文字符还是英文字符都算1个字符.) charAt(index)方法:获取指定索引位置的字符.(索引从0开始) indexOf(‘ ...

  2. C#中的Dictionary简介

    简介在C#中,Dictionary提供快速的基于兼职的元素查找.当你有很多元素的时候可以使用它.它包含在System.Collections.Generic名空间中. 在使用前,你必须声明它的键类型和 ...

  3. VB中的Dictionary对象

    VB中的Dictionary对象 Dictionary对象不是VBA或Visual Basic实时语言的具体存在的部分,它是存在于Microsoft Scripting Runtime Library ...

  4. C#中使用Dictionary实现Map数据结构——VC编程网

    转载自: http://blog.51cto.com/psnx168 在VC中使用过CMap以及在Java中使用过Map的朋友应该很熟悉,使用Map可以方便实现基于键值对数据的处理,在C#中,你就需要 ...

  5. [转] C#中的Dictionary的使用

    txw1958 的 原文 说明    必须包含名空间System.Collection.Generic     Dictionary里面的每一个元素都是一个键值对(由二个元素组成:键和值)     键 ...

  6. (转)C#中的Dictionary字典类介绍

    关键字:C# Dictionary 字典 作者:txw1958原文:http://www.cnblogs.com/txw1958/archive/2012/11/07/csharp-dictionar ...

  7. C#中的Dictionary字典类介绍

      Dictionary字典类介绍 必须包含名空间System.Collection.Generic    Dictionary里面的每一个元素都是一个键值对(由二个元素组成:键和值)    键必须是 ...

  8. C# .Net 中字典Dictionary<TKey,TValue>泛型类 学习浅谈

    一.综述: Dictionary<TKey,TValue>是在 .NET Framework 2.0 版中是新增的.表示键值对的集合,Dictionary<TKey,TValue&g ...

  9. C#中的Dictionary类,默认key是区分大小写的

    在C#中定义一个Dictionary Dictionary<string,string> dictionary = new Dictionary<string,string>( ...

  10. Python中的Dictionary

    Dictionary的创建 1 字面量 >>>D = {'a': 1, 'b': 2} >>>D {'b': 2, 'a': 1} 2 keyword参数 > ...

随机推荐

  1. Windows 2008 R2下 如何简单使用IIS来配置PHP网站

    虽然PHP网站配置一般大多数人可能会联想到用Apache+php+mysql来配置,但是呢,如果是为了安全性考虑或者是说是为了便捷高效快速的完成工作,那么Apache+php+mysql这个配置工作就 ...

  2. js实用方法记录-js动态加载css、js脚本文件

    js实用方法记录-动态加载css/js 附送一个加载iframe,h5打开app代码 1. 动态加载js文件到head标签并执行回调 方法调用:dynamicLoadJs('http://www.yi ...

  3. 字符串时间和NSDate相互转换的坑

    项目中服务器传回来的时间是这种格式的 Sep 5, 2016 6:59:05 PM 现在要将这段字符串转换成 2016-09-05 06:59 被坑的地方有2个点 服务器传回来的英文的Sep,调试的时 ...

  4. java基础阅读卷1整理(待更新)

    JAVA语言的一些简单摘要,分为11点 1.简单性2.面相对象3.网络技能(Network-Savvy)4.健壮性5.安全性 6.体系结构中立7.可移植性8.解释型9.高性能10.多线程11.多态性 ...

  5. ionic2 使用 cordova 打包成安卓apk

    准备工作: 1.下载java sdk 配置好java 环境 2.下载android sdk 跟 android studio 并配置好环境 1.查看平台支持,添加android平台 首先命令提示符进入 ...

  6. 求一个二维整数数组最大子数组之和,时间复杂度为N^2

    本随笔只由于时间原因,我就只写写思想了 二维数组最大子数组之和,可以  引用  一维最大子数组之和 的思想一维最大子数组之和 的思想,在本博客上有,这里就不做多的介绍了 我们有一个最初的二维数组a[n ...

  7. React之组件通信

    组件通信无外乎,下面这三种父子组件,子父组件,平行组件(也叫兄弟组件)间的数据传输.下面我们来分别说一下: 父子组件: var Demo=React.createClass({ getInitialS ...

  8. python学习第三个坑

    ##########################python 第三章 ################################这一章呢,主要是文件的操作,还有涉及到函数的一部分. PS:整 ...

  9. Assert与内存泄漏

    以前知道C/C++有assert之后,我想知道assert会不会造成内存泄漏,于是我做了一个测试: #include <iostream> #include <fstream> ...

  10. 作为前端,我为什么选择 Angular 2?

    转自:https://sanwen8.cn/p/2226GkX.html 没有选择是痛苦的,有太多的选择却更加痛苦.而后者正是目前前端领域的真实写照.新的框架层出不穷:它难吗?它写得快吗?可维护性怎样 ...