按值对AtomicLongMap进行排序

时间:2015-07-06 06:27:45

标签: java sorting dictionary guava

我使用guava AtomicLongMap来计算文档中的短语数量。

{{1}}

一切都像魅力一样,但我找不到按出现次数对地图进行排序的方法。

1 个答案:

答案 0 :(得分:1)

您可以将条目保存到List,然后按条目的值按相反的顺序对其进行排序:

List<Map.Entry<Object, Long>> sorted = 
    new ArrayList<>(frequentPhrases.asMap().entrySet());
Collections.sort(sorted, Collections.reverseOrder(Map.Entry.comparingByValue()));

for (Map.Entry<Object, Long> entry : sorted) {
    System.out.println(entry); // Or something more useful
}