1. 程式人生 > >C#基礎知識之使用字典

C#基礎知識之使用字典

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace UseDictionary
{
    class Program
    {
        static void Main(string[] args)
        {
            //ForEachDic( );
            UseRmvClr( );
        }

        static void ForEachDic( )
        {
            //建立一個新的Dictionary<int, string>字典物件intStrDic
Dictionary<int, string> intStrDic = new Dictionary<int, string>( ); Random rd = new Random( ); //用來產生隨機產生整數 for (int i = 1; i <= 5; i++) //為字典物件intStrDic新增5個元素 { int key = rd.Next(1, 200); //隨機產生一個整數,作為元素的key,它的十六進位制字串作為值
intStrDic.Add(key, string.Format("0x{0}", key.ToString("X8"))); } //第一種方法,通過遍歷字典的Values方法來獲得字典中所有的元素 System.Console.WriteLine("第一種:"); foreach (string val in intStrDic.Values) { System.Console.Write("{0} ", val); } System.Console.WriteLine( ); //第二種方法,通過便利字典中的Keys方法獲取元素的鍵key
//然後通過[] 和 key 獲取對應的值value System.Console.WriteLine("第二種:"); foreach (int key in intStrDic.Keys) { string val = intStrDic[key]; System.Console.Write("<{0},{1}> ", key, val); } System.Console.WriteLine( ); } static void UseRmvClr( ) { int[] intAry = { 1, 2, 3, 4, 5}; //intAry和strAry用來建立字典元素 string[] strAry = { "one", "two", "three", "four", "five" }; Dictionary<int, string> numDic = new Dictionary<int, string>( ); for (int i = 0; i < 5; i++) //將元素新增到字典numDic中 { numDic.Add(intAry[i], strAry[i]); //由於可以保證key不重複,所以不用判斷是否已經存在 } System.Console.WriteLine("包含鍵0?{0}", numDic.ContainsKey(0)); System.Console.WriteLine("包含鍵2?{0}", numDic.ContainsKey(2)); System.Console.WriteLine("包含值zero?{0}", numDic.ContainsValue("zero")); System.Console.WriteLine("包含值two?{0}", numDic.ContainsValue("two")); numDic.Remove(2); System.Console.WriteLine("包含值two?{0}", numDic.ContainsValue("two")); numDic.Clear( ); System.Console.WriteLine("剩下元素個數:{0}", numDic.Count); } } }

類似於C++中的標準模板庫STL的使用,有vector,map等,Python裡也有字典,元組等概念,一點一滴去積累,查漏補缺,加油!