Flu*_*uup 3 c# dictionary ordereddictionary
我正在尝试按 C#Dictionary<int, int>的值排序,而不使用 LINQ OrderBy,因为 iPhone 不支持它。
我似乎无法弄清楚,所以非常感谢您的帮助!
有很多可能的方法可以做到这一点。以下所有假设myDictionary都是要排序的原始字典。
var myList = myDictionary.ToList();\nmyList.Sort((a, b) => a.Value.CompareTo(b.Value));\nRun Code Online (Sandbox Code Playgroud)\n\nvar myArray = myDictionary.ToArray();\nArray.Sort(myArray, (a, b) => a.Value.CompareTo(b.Value));\nRun Code Online (Sandbox Code Playgroud)\n\n仅当您知道每个值仅出现一次时,此解决方案才适用。
\n\nvar mySortedDict = new SortedDictionary<int, int>();\nforeach (var kvp in myDictionary)\n mySortedDict[kvp.Value] = kvp.Key;\nRun Code Online (Sandbox Code Playgroud)\n\n仅当值可以出现多次时,此解决方案才适用。
\n\nvar mySortedDict = new SortedDictionary<int, List<int>>();\nforeach (var kvp in myDictionary)\n{\n if (!mySortedDict.ContainsKey(kvp.Value))\n mySortedDict[kvp.Value] = new List<int>();\n mySortedDict[kvp.Value].Add(kvp.Key);\n}\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
4968 次 |
| 最近记录: |