【发布时间】:2016-01-30 21:49:34
【问题描述】:
如何在 Java 8 中将 Map<String, Double> 转换为 List<Pair<String, Double>>?
我写了这个实现,但是效率不高
Map<String, Double> implicitDataSum = new ConcurrentHashMap<>();
//....
List<Pair<String, Double>> mostRelevantTitles = new ArrayList<>();
implicitDataSum.entrySet()
.stream()
.sorted(Comparator.comparing(e -> -e.getValue()))
.forEachOrdered(e -> mostRelevantTitles.add(new Pair<>(e.getKey(), e.getValue())));
return mostRelevantTitles;
我知道它应该可以使用.collect(Collectors.someMethod())。但我不明白该怎么做。
【问题讨论】:
标签: java java-8 java-stream