什麼是Dictionary?他是個很簡單的東西,概念跟字典有點類似沒錯,如果我有10組鑰匙,跟10組物品,且滿足兩個條件,一、每個鑰匙不重複,二、每個鑰匙配一個物品。(物品可以長的一樣,比方第一個物品跟第六個物品都是一樣的杯子,只要能夠不會讓鑰匙沒有搭配的物品,或兩把鑰匙搭配到同一個物品就行了。)那接下來,你問Dictionary,某一把鑰匙,他就會告訴你對應的物品是什麼。我們看一下範例程式片段:
Dictionary<string, string> MyDic = new Dictionary<string, string>( );
// 建立字典
private void CreateDictionary( )
{
MyDic.Add( "Name", "Jack" );
MyDic.Add( "Blog", "Jack’s Blog" );
MyDic.Add( "Group", "KTV Group" );
}
// 查字典
private String FindInDictionary( String FindMe )
{
if ( true == ( MyDic.ContainsKey( FindMe ) ) )
{
return MyDic[ FindMe ];
}
else
{
return "Not Found";
}
}
// 巡整個字典
private void ShowAllInDictionary( )
{
foreach ( var OneItem in MyDic )
{
Console.WriteLine( "Key = " + OneItem.Key + ", Value = " + OneItem.Value );
}
}
除了上面那種先宣告再Add的方式之外,也可以用底下的方式來直接宣告並產生內容
Dictionary<string, string> dctNewWay =
new Dictionary<string, string>()
{
{"Key1", "AAAA"}, {"Key2", "BBBB"},
{"Key3", "CCCC"}, {"Key4", "DDDD"}
};
另外,值得一提的是,Key跟Value並不限定只能用String,什麼型別都可以,所以你也可以把Class塞到Value,然後其中一個屬性拿出來當作Key,就可以方便的確認有沒有重複的Key,不用塞到SQL才知道。
謝謝分享!
回覆刪除簡單明瞭!!!謝謝版主熱心分享:D
回覆刪除感謝教學,十分簡單易懂 :3
回覆刪除感覺起來這跟PHP和Python的自訂索引感覺很像。
本來以為是Array, 後來大大地清楚了. 感謝+1
回覆刪除