【问题标题】:How to enumerate through Dictionary如何通过字典进行枚举
【发布时间】:2011-05-16 13:50:07
【问题描述】:

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

【问题讨论】:

    标签: c#


    【解决方案1】:
    foreach(KeyValuePair<String,String> pair in dictionary)
    {
         string key = pair.Key;
         string value = pair.Value;
    }
    

    或按项目获取访问权限

    dictionary.ToList()[index].Key/Value    :-)
    

    【讨论】:

      【解决方案2】:

      字典是一个无序集合,因此它不提供随机访问。只有实现 IList&lt;T&gt; 的类型才提供对其内容的随机访问。

      嗯,这并不完全正确 - 您可以使用 OrderedDictionary(这将使您在没有 IList&lt;T&gt; 的情况下进行随机访问),但您会失去通用字典的好处。如果您需要随机访问,很可能您不应该使用字典。

      【讨论】:

        【解决方案3】:

        【讨论】:

        • 这应该是对问题的评论。
        【解决方案4】:

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

        【讨论】:

          【解决方案5】:

          我发现这很有用:

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

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

          【讨论】:

            猜你喜欢
            • 2012-05-19
            • 1970-01-01
            • 2017-03-12
            • 1970-01-01
            • 2019-04-14
            • 1970-01-01
            • 2018-02-16
            • 2017-05-26
            • 1970-01-01
            相关资源
            最近更新 更多