我有一个 HashMap ,我希望获取此 HashMap 中的值的数组,但我希望该数组按 HashMap 中的键进行排序。
例如,如果 map 如下所示:
- <2,obj1>
- <4,obj2>
- <0,obj3>
- <10,obj4>
- <5,obj5>
- <1,obj6>
- <15,obj7>
- <3,obj8>
我希望数组为:[obj3,obj6,obj1,obj8,obj2,obj5,obj4,obj7]
越快越好。有内置的方法可以做到这一点吗?
最佳答案
听起来您想要一个 SortedMap
,特别是 TreeMap
。您可以利用映射维护键的排序列表来生成输出数组的事实,例如通过使用 SortedMap.values()
或迭代映射中的条目。
关于java - 在Java中: Get array of values of a map sorted by the map's keys,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4092445/