c# - .NET 中是否有 Dictionary 的替代方案?

标签 c# .net performance dictionary ordereddictionary

我有一个在项目中使用字典的要求,但我们知道它们只能使用键访问,不能使用索引,我想使用索引访问字典中的项目。所以我在网上摆弄,发现了 OrderedDictionary,因为它们可以使用索引和键访问,但它们有一些 performance issue。因为我每天每分钟都在读/写字典,所以使用 OrderedDictionary 不是一个好主意。

所以最后我的问题是,是否有任何可用的替代方案可以为我提供 Dictionary 的功能,并且我还可以使用索引访问它并且不会导致性能问题。

最佳答案

SortedList<TKey, TValue>有属性(property),Values , 那是一个 IList<TValue> .够了吗?它只对小的元素“集”是快速的。与 SortedDictionary 的区别在这里 http://msdn.microsoft.com/en-us/library/5z658b67(v=vs.80).aspx

请问您为什么要“按索引”访问它?你仍然可以用 foreach 枚举它,你知道吗?

关于c# - .NET 中是否有 Dictionary 的替代方案?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7282446/

相关文章:

c# - 如何获取字段类型名称?

c# - NAudio算法播放频率可以实时平滑变化的正弦波

c# - 如何在模型绑定(bind)期间忽略 HttpRequestValidationException 和自己编码的 HTML?

c# - 从父类到其派生类的通信设计模式

python - 真正的文件对象比 StringIO 和 cStringIO 慢?

c# - 使用依赖注入(inject)统一配置的简单授权服务提供者

c# - 如何根据进程 ID 而不是进程名称获取 CPU 使用率

c# - 如何检查 c#.net 应用程序中所有静态对象的内存使用情况

ios - 如何有效地分析 Xcode 中的丢帧?

algorithm - 在图中找到成本小于 m 的最大区域