C#迭代字典按值排序

Geo*_*sen 9 c# dictionary loops sorted

有没有办法按排序顺序迭代一个字典,按VALUE而不是键排序?我确实阅读了"SortedDictionary"对象,但遗憾的是,它是按键排序的.一个解决方案是让我用我的值翻转我的所有键,并将它们放入SortedDictionary(因为它们都是整数) - 但是,我不完全确定如何使用那个.

Jon*_*Jon 19

获取键/值对,排序和迭代.使用LINQ很容易死:

foreach(var pair in dictionary.OrderBy(p => p.Value)) {
    // work with pair.Key and pair.Value
}
Run Code Online (Sandbox Code Playgroud)

  • @GeorgesOatesLarsen:这是你不使用它而错过的东西.您可能想阅读[this](http://msdn.microsoft.com/en-us/library/bb308959.aspx)或Google it(现在必定会有更好的介绍). (2认同)