字典枚举顺序

Sib*_*Guy 10 .net c#

文档说明Dictionary密钥顺序未指定.我想这意味着在枚举期间第一个添加的元素可能不是第一个.但是Dictionary每次枚举它都能保证顺序相同吗?

Jon*_*Jon 19

是的,目前它确实以相同的顺序返回项目(假设您在此期间不触发哈希表的大小调整).

不,你不应该依赖它.

一般来说,除非明确保证订单保持不变,否则您不能承担任何责任.而这种保证肯定没有给出:

返回项的顺序未定义.

如果您对学术目的的细节感兴趣,请参阅这篇优秀的博客文章.