如何通过Dictionary进行枚举

时间:2010-11-27 14:13:50

标签: c#

如何通过索引(int index)来检索Dictionary中的元素..;而不是键

5 个答案:

答案 0 :(得分:6)

foreach(KeyValuePair<String,String> pair in dictionary)
{
     string key = pair.Key;
     string value = pair.Value;
}

或按项目

进行访问
dictionary.ToList()[index].Key/Value    :-)

答案 1 :(得分:3)

Dictionary是一个无序集合,因此它不提供随机访问。只有实现IList<T>的类型才能提供对其内容的随机访问。

嗯,这不完全正确 - 您可以使用OrderedDictionary(这将为您提供无IList<T>的随机访问权限),但您将失去通用字典的好处。如果您需要随机访问,很可能您不应该使用词典。

答案 2 :(得分:3)

答案 3 :(得分:2)

没有按索引检索元素的方法,因为Dictionary类没有指定存储键/值对的顺序。如果您需要键和索引查找,请使用OrderedDictionary类。

答案 4 :(得分:1)

我觉得这很有用:

foreach (var key in dictionary.Keys)
{
    var value = dictionary[key];
}

foreach (var value in dictionary.Values)
{
    // use value
}