字典与重复键

Yog*_*pta 9 c# .net-3.5 c#-3.0

可能重复:
是否存在允许重复的Dictionary/SortedList的替代方法?

我正在寻找一个可以有重复键的Dictionary类.

我搜索它,发现LookUp类可以用来存储重复的键,但是它没有默认的构造函数,所以我们不能在没有LookUp的任何其他对象的情况下初始化它.

但是我最初没有任何这样的对象,我可以从中初始化LookUp对象.

所以,我的问题是,.Net framework 3.5中是否有任何类,它的行为类似于Dictionary但允许我有像LookUp这样的重复键?

mad*_*ode 19

您可以创建键值对列表.

List<KeyValuePair<string,int>>
Run Code Online (Sandbox Code Playgroud)

  • 但那时它不是逻辑上的字典,它只是一对配对列表.(这可能是他需要/想要的,我只是技术.) (2认同)

Ser*_*rvy 12

根据定义,字典永远不会有多个具有相同值的键.(如果你查找了一个键,你会返回什么?)即使是你所提到的查找,也不允许它.你可以做的是让每个键引用多个值(逻辑上,而不是技术上).这是通过使用字典来完成的,其中值是某种类型的数据结构(例如,a List),其包含与该特定键对应的所有值.