如何在给定索引处获取OrderedDict的密钥?

时间:2014-06-30 15:21:25

标签: c# dictionary collections icollection

我似乎无法找到一个明显简单问题的快速解决方案:我有一个C#OrderedDict,并且利用订单的先验知识,想要检索密钥在某个位置。

OrderedDict.Keys返回一个ICollection对象,但我找不到一种直接的方法来检索某个位置的元素。

我现在通过使用foreach.Keys循环中构建一个列表并对其编制索引来解决它,但这对我来说似乎并不优雅。

来自Python,我基本上在寻找list(someOrderedDict.keys())[index]等价物。在C#中有类似的东西吗?

1 个答案:

答案 0 :(得分:1)

如果它是OrderedDictionary你的意思是没有优雅的方式来自己编写课程。使用OrderedDictionary的最优雅方式(可能效率不高)可能是:

var key = orderedDictionary.Keys.OfType<object>().Skip(index).First();