的優點時,使用字典項目的最佳方法我想要像列表中的泛型類 那樣使用字典項目,例如;當我們使用列表
foreach(item in ItemList)
{
item.BlaBla;
}
但是在字典裏沒有機會,像上面E法...
Dictionary<string, HtmlInputImage> smartPenImageDictionary;
我的意思是我認識的字典項重點項目..但我想要什麼,我想要從列表的開始到結束。
的優點時,使用字典項目的最佳方法我想要像列表中的泛型類 那樣使用字典項目,例如;當我們使用列表
foreach(item in ItemList)
{
item.BlaBla;
}
但是在字典裏沒有機會,像上面E法...
Dictionary<string, HtmlInputImage> smartPenImageDictionary;
我的意思是我認識的字典項重點項目..但我想要什麼,我想要從列表的開始到結束。
我不是很確定你想達到什麼目的,但這裏有一些你可以用字典做的常見事情。
IDictionary<Int32, String> dictionary = new Dictionary<Int32, String>();
// Iterate over all key value pairs.
foreach (KeyValuePair<Int32, String> keyValuePair in dictionary)
{
Int32 key = keyValuePair.Key;
String value = keyValuePair.Value;
}
// Iterate over all keys.
foreach (Int32 key in dictionary.Keys)
{
// Get the value by key.
String value = dictionary[key];
}
// Iterate over all values.
foreach (String value in dictionary.Values)
{
}
對字典進行迭代結果爲KeyValuePair<>
s。只需訪問相應變量的Key
和Value
成員即可。
字典沒有「開始」和「結束」 - 它是無序的。
但是,您可以遍歷鍵或值:
foreach (string key in smartPenImageDictionary.Keys)
{
...
}
foreach (HtmlInputImage image in smartPenImageDictionary.Values)
{
...
}
或鍵/值對:(或課程var
,使最後的情況要好得多)
foreach (KeyValuePair<string, HtmlInputImage> pair in smartPenImageDictionary)
{
string key = pair.Key;
HtmlInputImage image = pair.Value;
...
}
類似這樣的:
foreach (KeyValuePair<string, HtmlInputImage> kvp in smartPenImageDictionary)
{
Console.WriteLine("Value " + kvp.Value);
}
我假設你想要它們,就像IList<T>
提供的一樣。據我所知是沒有保證的Dictionary<Tkey,TValue>
秩序,從而爲你添加和刪除的項目,甚至稱這再次它可能會改變你需要
mydictionary.ToList();
不過。一種解決方案是編寫自己的Collection
,它有一個可以使用的自定義索引器。
danke Daniel。 ! – theklc 2010-05-28 11:47:23