鉴于我有一些函数需要两个参数并返回一个值,是否可以将 Map 转换为 Stream 中的 List 作为非终端操作?我找到的最近的方法是在地图上使用 forEach 创建实例并将它们添加到预定义的列表中,然后从该列表中启动一个新的流。还是我只是错过了什么?
例如:经典的“在长长的单词列表中找到 3 个最常出现的单词”
wordList.stream().collect(groupingBy(Function.identity, Collectors.counting))).
(现在我想流式传输该地图的 entrySet)
sorted((a,b) -> a.getValue().compareTo(b.getValue))).limit(3).forEach(print...