是treeMap中的值排序:java

时间:2014-01-03 13:20:26

标签: java treemap

我在java中使用了treeMap。 我想获得所有值的排序列表/集合。 TreeMap.values()可以解决这个问题吗?

我得到的集合,是否会根据keySet进行排序,或者此集合是随机的。

感谢。

3 个答案:

答案 0 :(得分:5)

排序:Treemap.values()

  

集合的迭代器以相应键的升序返回值。

答案 1 :(得分:2)

是的,TreeMap实现了NavigableMap,它扩展了SortedMap,因此按键排序。

答案 2 :(得分:0)

如TreeMap.values()的javadoc中所述:

  

集合的迭代器以升序返回值   相应的键

因此返回的集合可以按键的升序迭代

为了更灵活地对地图的值进行排序,我通常使用以下模式:

 List listOfValues = new ArrayList();
 Comparator valuesComparator = ...;
 listOfValues.addAll(myTreeMap.values());
 Collections.sort(listOfValues, valuesComparator);