Dictionary< K,V >字典

命名空间 using System.Collections.Generic;

Dictionary 键值对集合.(字典)
该集合中的每个数据都是有两部分组成的,键(Key)和值(Value)。在键值对集合当中键必须是唯一的,而值是可以重复的。

 // 创建一个键值对集合对象
 Dictionary<string, string> dic = new Dictionary<string, string>();
 // 添加
 dic.Add("1", "一");
 dic.Add("2", "二");
 dic.Add("3", "三");
 dic.Add("4", "四");
 // 在键值对集合中,是根据键去找值。
 // dic["1"] 根据键去查找相对应的值
 Console.WriteLine(dic["1"]);
 // Keys 获取键值对的集合键,Values 获取键值对的值
 // 遍历集合的键
 foreach (var item in dic.Keys)
     Console.WriteLine("键是————:{0},值是————:{1}",item,dic[item]);
 // 另一种遍历方式  KeyValuePair<k,v> 一对数据一对数据的遍历。 
 //类型必须要和你遍历的集合类型一致
 foreach (KeyValuePair<string, string> item in dic)
     Console.WriteLine("{0},{1}",item.Key,item.Value);
 Console.WriteLine("-----------------------------------");
 // *** 键值对集合当中,键必须是唯一的,而值可以重复
 // 这样也可以添加数据,但是如果键在集合中已经存在,值会覆盖掉之前键所对应的值
 dic["5"] = "五";
 // 例如;
 dic["1"] = "one";
 foreach (var item in dic.Keys)
     Console.WriteLine("键是————:{0},值是————:{1}", item, dic[item]);
 Console.WriteLine("+++++++++++++++++++++++++++++++++++++++++++++++");
 // 判断键值对当中是否包含某个键
 if (!dic.ContainsKey("6"))
     dic.Add("6", "六");
 foreach (var item in dic.Keys)
     Console.WriteLine("键是————:{0},值是————:{1}", item, dic[item]);
 Console.WriteLine("---------------------------------------------");
 //dic.Clear(); //移除集合中所有的元素
 dic.Remove("1");
 foreach (var item in dic.Keys)
     Console.WriteLine("键是————:{0},值是————:{1}", item, dic[item]);
 Console.Read();
  1 . Add(K,V);
  往集合中添加数据。K键,V值。
  2 . ContainsKey(string key);
  判断键值对当中是否包含某个键。
  3 . Clear();
  移除集合中所有的元素。
  4 . Remove(string key);
  移除所指定的键的值。
  5 . 集合名[键名];
  取出指定键名所对应的数据。

在键值对集合中,我们是根据键去找值的。所以键值对遍历时我们我们先要遍历集合键;Keys 获取键值对的集合键,Values 获取键值对的值。

foreach (var item in dic.Keys)
    Console.WriteLine("键是———:{0},值是———:{1}",item,dic[item]);

Dictionary< k , v >有另一种遍历方式 KeyValuePair< Tk , Tv > 一对数据一对数据的遍历。类型必须要和你遍历的集合类型一致。

foreach (KeyValuePair<string, string> item in dic)
    Console.WriteLine("{0},{1}",item.Key,item.Value);

集合实例:

http://download.csdn.net/detail/joinl/9838927

泛型集合:一旦确定了泛型集合的类型里面元素的类型也就确定了,泛型集合只能存储固定类型的对象。也就不会强行对值类型进行装箱和拆箱,或对引用类型进行向下强制类型转换。

  System.Collections.Generic(程序集:mscorlib)    1)、从一组键(Key)到一组值(Value)的映射,每一个添加项都是由一个值及其相关连的键组成    2)、任何键都必须是唯一的    3)、键不能为空引用null(VB中的Nothing),若值为引用类型,则可以为空值... 2、为什么要使用集合? 数组在定义是需要明确元素个数,在程序开发中,若是在声明变量时,不确定元素格式,使用数组可能会存在冗余和超出数组界限的情况,集合的声明不需要考虑元素的个数,根据实际的设计需要自动增长。 3、常用集合方法 List<string> nameList = new List<s 使用字典的原因: 通常情况下,我们可以通过int类型的索引号来从数组或者list集合中查询所需的数据。但是如果情况稍微复杂一点:索引号是非int型数据比如string或其他类型该如何操作呢。这个时候我们就可以使用字典了。 字典是一种让我们可以通过索引号查询到特定数据的数据结构类型。 1、用来存储具有一一对应关系的数据的集合 2、使用key-value(键值对)来存储数据 3、字典中key是唯一的,value可以是变量,也可以是个对象 4、字典是一个泛型集合(泛型类),实例化的 1 List<T> List<T>泛型集合类型更快捷、更便于使用:不必再从CollectionBase中派生一个类,然后实现需要的方法。它的另一个好处是正常情况下需要实现的许多方法(例如,Add())已经自动实现了。 创建T类型对象的集合需要如下代码: List<T> myCollection = new List&lt... 目录Dictionary.csList.csQueue.csStack.csProgram.cs Dictionary.cs //编程实现Dictionary泛型集合中添加、删除、遍历输出元素的操作 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp5 class Dict How to find objects in Generics with List.Find() method Ive been looking for help on how to find objects in Generics with List.Find() method .... and ... take a look what I have found.In the follow 所属命名空间:System.Collections.Generic     List&lt;T&gt;类是 ArrayList 类的泛型等效类。该类使用大小可按需动态增加的数组实现 IList&lt;T&gt; 泛型接口。 泛型的好处: 它为使用c#语言编写面向对象程序增加了极大的效力和灵活性。不会强行对值类型进行装箱和拆箱,或对引用类型进行,向下强制类型转换,所以性能得到提高。 性能注意事... 转自:http://www.studyofnet.com/news/45.html 本文导读:在C#中,Dictionary提供快速的基于键值的元素查找。他的结构是这样的:Dictionary ,当你有很多元素的时候可以使用它。它包含在System.Collections.Generic名空间中。在使用前,你必须声明它的键类型和值类型。      泛型最常见的用途是泛型集合,命名空   System.Collections.Generic(程序集:mscorlib)    1)、从一组键(Key)到一组值(Value)的映射,每一个添加项都是由一个值及其相关连的键组成    2)、任何键都必须是唯一的    3)、键不能为空引用null(VB中的Nothing),若值为引用类型,则可以为空值 作为一名安卓程序猿,以前都是调用后台的接口,最近在学javaweb,自己给自己写接口,但是一个json对象我写起来很简单,或者一层数组写起来很简单,那么复杂的接口我就很费劲了,之前不太会,只能自己拼接,有时候还错误一堆堆。经过了群里的指导和自己的摸索,再难的接口我也不怕了,接下来我把代码贴上: 学生实体类: import java.util.List; public class St