asp.net:如何在不使用密钥的情况下访问字典的每个元素?

时间:2009-05-13 10:18:43

标签: .net dictionary indexing

我想用int index访问我的字典Dictionary的每个对象。 如何做到这一点。

4 个答案:

答案 0 :(得分:5)

Dictionary<KeyType, ValueType> myDictionary = . . .


foreach(KeyValuePair<KeyType, ValueType> item in myDictionary)
{
   Console.WriteLine("Key={0}: Value={1}", item.Key, item.Value);
}

答案 1 :(得分:1)

您可以使用foreach循环,如下所示:

Dictionary<string, string> dict = new Dictionary<string, string>();
dict.Add("key1", "value2");
dict.Add("key2", "value");
foreach (KeyValuePair<string, string> item in dict)
   Console.WriteLine(item.Key + "=" + item.Value);

答案 2 :(得分:1)

或者,如果您使用Visual Studio 2008,则可以:

foreach(var item in myDictionary)
{
   . . . 
}

答案 3 :(得分:1)

我最喜欢的方法就是这个(尽管我猜到目前为止给出的任何解决方案都能为你做到这一点):

// set up the dictionary
Dictionary<string, string> dictionary = new Dictionary<string, string>();
dictionary.Add("A key", "Some value");
dictionary.Add("Another key", "Some other value");

// loop over it
Dictionary<string, string>.Enumerator enumerator = dictionary.GetEnumerator();
while (enumerator.MoveNext())
{
    Console.WriteLine(enumerator.Current.Key + "=" + enumerator.Current.Value);
}