C#中Dictionary的用法

來源:互聯網
上載者:User

標籤:http   使用   os   strong   io   for   cti   ar   

在C#中,Dictionary提供快速的基於兼職的元素尋找。他的結構是這樣的:Dictionary<[key], [value]> ,當你有很多元素的時候可以使用它。它包含在System.Collections.Generic名空間中。在使用前,你必須聲明它的鍵類型和實值型別。

方法/步驟
  1.  要使用Dictionary集合,需要匯入C#泛型命名空間

     System.Collections.Generic(程式集:mscorlib)

  2.  Dictionary的描述

    1、從一組鍵(Key)到一組值(Value)的映射,每一個添加項都是由一個值及其相關連的鍵組成

    2、任何鍵都必須是唯一的

    3、鍵不可為空引用null(VB中的Nothing),若值為參考型別,則可以為空白值

    4、Key和Value可以是任何類型(string,int,custom class 等)

  3.  Dictionary常用用法:以 key 的類型為 int , value的類型為string 為例

     1、建立及初始化

     Dictionary<int,string>myDictionary=newDictionary<int,string>();

     

     2、添加元素

    myDictionary.Add(1,"C#");

    myDictionary.Add(2,"C++");

    myDictionary.Add(3,"ASP.NET");

    myDictionary.Add(4,"MVC");

     

     3、通過Key尋找元素

    if(myDictionary.ContainsKey(1))

    {

    Console.WriteLine("Key:{0},Value:{1}","1", myDictionary[1]);

     }

     

     4、通過KeyValuePair遍曆元素

    foreach(KeyValuePair<int,string>kvp in myDictionary)

    ...{

    Console.WriteLine("Key = {0}, Value = {1}",kvp.Key, kvp.Value);

    }

     

    5、僅遍曆鍵 Keys 屬性

    Dictionary<int,string>.KeyCollection keyCol=myDictionary.Keys;

    foreach(intkeyinkeyCol)

    ...{

    Console.WriteLine("Key = {0}", key);

    }

     

    6、僅遍曆值 Valus屬性

    Dictionary<int,string>.ValueCollection valueCol=myDictionary.Values;

    foreach(stringvalueinvalueCol)

    ...{

    Console.WriteLine("Value = {0}", value);

    }

     

    7、通過Remove方法移除指定的索引值

    myDictionary.Remove(1);

    if(myDictionary.ContainsKey(1))

    ...{

      Console.WriteLine("Key:{0},Value:{1}","1", myDictionary[1]);

    }

    else

    {

    Console.WriteLine("不存在 Key : 1"); 

     }

  4. 其它常見屬性和方法的說明:

     

      Comparer:           擷取用於確定字典中的鍵是否相等的 IEqualityComparer。

      Count:                  擷取包含在 Dictionary中的鍵/值對的數目。

      Item:                    擷取或設定與指定的鍵相關聯的值。

      Keys:                   擷取包含 Dictionary中的鍵的集合。

      Values:                擷取包含 Dictionary中的值的集合。

      Add:                    將指定的鍵和值添加到字典中。

      Clear:                  從 Dictionary中移除所有的鍵和值。

      ContainsKey:      確定 Dictionary是否包含指定的鍵。

      ContainsValue:   確定 Dictionary是否包含特定值。             

      GetEnumerator:  返回逐一查看 Dictionary的枚舉數。

      GetType:             擷取當前執行個體的 Type。 (從 Object 繼承。)

      Remove:             從 Dictionary中移除所指定的鍵的值。

      ToString:             返回表示當前 Object的 String。 (從 Object 繼承。)

      TryGetValue:      擷取與指定的鍵相關聯的值。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.