【问题标题】:Which list type to use?使用哪种列表类型?
【发布时间】:2015-11-14 14:18:15
【问题描述】:

我使用 Dictionary 来添加一些数据,然后将其绑定到 ChecBoxListControl,但是当我得到 2 个具有相同值的键时,我遇到了一个主要问题。字典不能接受具有相同值的 2 个键。

所以,现在我想知道我可以使用什么来代替 Dictionary,它会给我带来与 Dictionary 的“相同体验”,并带有键和值。

有什么建议吗?

谢谢

【问题讨论】:

  • ILookup<TKey, TValue>
  • 如果你有两个键名和值相同的键,为什么要添加两次呢?您将如何选择以后使用哪一个?
  • 您可以创建List<KeyValuePair<TKey, TValue>>,但您无法在恒定时间内通过键查找值。

标签: c# list dictionary arraylist checkboxlist


【解决方案1】:

使用List<KeyValuePair<TKey, TValue>>ListItemCollection

【讨论】:

    【解决方案2】:

    你说你想要一个重复键的集合。这是不可能的,因为在它们的使用中,collection[key] 返回一个TElement

    执行您想要的操作的列表必须返回 IEnumerable<TElement> 以表示该键下的所有元素。

    可以使用List<KeyValuePair<TKey, TValue>>List<Tuple<Item1, Item1>> 进行模拟。

    它没有使用collection[key] 的语法糖,但它接近你想要的。而且这比实现自己的类型要少得多。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-12-19
      • 2023-03-25
      • 2011-08-10
      • 2012-07-17
      • 2017-06-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多