3

假设我有一个 java.util.HashMap 对象。我想生成一个列表,其中 HashMap 中的条目按 Double 的值从高到低排序。我该怎么做?我已经使用 Guava Ordering 类在 Java 中进行了尝试,但我不喜欢从 xtend 跳转到 Java 的美学,此外,它不起作用:( 我觉得这应该很容易在 xtend 中使用 lambda 表达式,但我不知道该怎么做。

谢谢。

4

1 回答 1

4
val source = newHashMap('one' -> 1.0 , 'two' -> 2.0)
source.entrySet.sortBy[-value]           // List<Map.Entry<String, Double>>

或者如果你只想要钥匙

source.entrySet.sortBy[-value].map[key]  // List<String>
于 2012-11-20T18:04:16.370 回答