Collectors.groupingBy()能排序吗
时间: 2023-10-12 15:12:07 浏览: 69
Java8 stream 中利用 groupingBy 进行多字段分组求和案例
5星 · 资源好评率100%
Collectors.groupingBy() 方法本身并不提供排序功能。但是,你可以在 stream 之后使用 sorted() 方法对 groupBy 的结果进行排序,比如:
```
List<String> strings = Arrays.asList("foo", "bar", "baz", "qux", "quux", "corge");
Map<Integer, List<String>> result = strings.stream()
.collect(Collectors.groupingBy(String::length));
result.entrySet().stream()
.sorted(Map.Entry.comparingByKey())
.forEach(System.out::println);
```
上面的代码会将字符串列表按照长度分组,并按照长度升序输出分组结果。
阅读全文