遍历字典键

时间:2014-10-15 01:09:37

标签: c# dictionary unity3d

有没有办法在字典中获取密钥的位置?

例如,如果我的键是23,44,56,66,并且我想让它们在位置0处键入它将返回我23.或者在位置2处的键将返回56.

字典键是否可以像这样遍历?

2 个答案:

答案 0 :(得分:2)

所以是的,词典能够被迭代,因为它们是一种ICollection。

如果你真的想找一个随机密钥,你可以创建一个随机数并使用

 var randomNumber = 5; (or however you want to get a random number)
 var randomKey = yourDictionary.ElementAt(randomNumber).Key;

所以这将获得字典第六位的关键,如果你想要你也可以通过说.Value获得价值;

答案 1 :(得分:0)

来自MSDN

  

出于枚举的目的,字典中的每个项都被视为   表示值及其值的KeyValuePair结构   键。返回项目的顺序未定义。

因此指数不会一致,如果你确实得到它。

如果可以的话,我建议您使用类似List<T>或类的KeyValuePair<TKey,TValue>