Dictionary<key,value>详解

1.声明:分别有key与value组合,value可以是一个类,对数,数组类型,数据表

Dictionary<String, String> pList = new Dictionary<String, String>();

2.查找是否包含key值

if(pList.ContainsKey("Item1") == false){//列表未包含item1的键值,新增key值

  pList.add("item1","zhengjing");

}

3.//判断是否存在相应的key并显示

    if (pList.ContainsKey("Item1"))
    {
        Console.WriteLine("Output: " + pList["Item1"]); 或pList.Item1
    }
4.遍历方法 
//遍历Key
    foreach (var key in pList.Keys)
    {
        Console.WriteLine("Output Key: {0}", key);
    }
 
    //遍历Value
    foreach (String value in pList.Values)
    {
        Console.WriteLine("Output Value: {0}", value);
    }
    //遍历Key和Value
    foreach (var dic in pList)
    {
        Console.WriteLine("Output Key : {0}, Value : {1} ", dic.Key, dic.Value);
    }
  //遍历Key和Value
  foreach(KeyValuePair<string,string> kv in list)
  {
    Console.WriteLine(kv.Key+kv.Value);
  }
5.数组
/// <summary>
/// Dictionary的Value为一个数组
/// </summary>
 public static void DicSample2()
 {
     Dictionary<String, String[]> dic = new Dictionary<String, String[]>();
     String[] ZheJiang =  { "Huzhou""HangZhou""TaiZhou" };
     String[] ShangHai = { "Budong""Buxi" };
     dic.Add("ZJ", ZheJiang);
     dic.Add("SH", ShangHai);
     Console.WriteLine("Output :" + dic["ZJ"][0]);
 }
6.类
public static void DicSample3()
 {
     Dictionary<String, Student> stuList = new Dictionary<String, Student>();
     Student stu = null;
     for (int i = 0; i < 3; i++ )
     {
         stu = new Student();
         stu.Name = i.ToString();
         stu.Name = "StuName" + i.ToString();
         stuList.Add(i.ToString(), stu);
     }
 
     foreach (var student in stuList)
     {
         Console.WriteLine("Output : Key {0}, Num : {1}, Name {2}", student.Key, student.Value.Name, student.Value.Name);
     }
 }
 

public class Student
{
public String Num { get; set; }
public String Name { get; set; }
}

 
 
posted @ 2016-11-19 21:57  xszjk  阅读(572)  评论(0)    收藏  举报