字典:将调用.Keys与.Values一致订购?

Cha*_*lor 1 c# dictionary

假设我有一个字典,然后调用.Keys,然后调用.Values,没有干预操作.密钥的排序是否与值的排序一致?

换句话说,第n个键是否与字典中之前的第n个值相对应?

Jon*_*eet 9

密钥的排序是否与值的排序一致?

是的,它是由两者的文档保证IDictionary<,>.KeysIDictionary<,>.Values.

Keys 文档:

Dictionary<TKey, TValue>.KeyCollection未指定密钥的顺序,但它Dictionary<TKey, TValue>.ValueCollectionValues属性返回的关联值的顺序相同.

Values 文档:

Dictionary<TKey, TValue>.ValueCollection未指定值中的值的顺序,但它Dictionary<TKey, TValue>.KeyCollectionKeys属性返回的关联键的顺序相同.


gle*_*n3b 5

根据MSDN的Dictionary.Keys文档,是的.

Dictionary<TKey, TValue>.KeyCollection 未指定密钥的顺序  ,但它Dictionary<TKey, TValue>.ValueCollectionValues 属性返回  的关联值的顺序相同  .