How to disable sorting in a Dictionary?
我用的是
是否有一种方法可以禁用添加项的排序,或者更好地使用其他自定义类(我希望保留所有
如果使用
对象存储在
显然有一个SortedDictionary<>类。我甚至没想到要找那个,因为它似乎和字典有点矛盾…
I need to keep the items in the order they were placed in the dictionary,
号
这不符合字典的主要职责。
您可以使用
在
For purposes of enumeration, each item in the dictionary is treated as
a KeyValuePair structure representing a value and its
key. The order in which the items are returned is undefined.
号
您可以使用:
1 | List<KeyValuePair<T1,T2>> |
这个列表确实保持了插入顺序,就像字典中定义了顺序一样。
编辑:
既然你既想要点菜,又想要一个接受者,如果内存没有问题,可以构建一个包装类,该类将值保存在两个内部集合中:
清单和字典。您将按索引(从列表中)和按键(从字典中)提供包装getter。列表和字典都需要是私有的,请确保Alwyas在两个集合中添加和删除对象。