java 使用stream对字符串集合进行分组并按key排序
时间: 2024-01-31 16:01:51 浏览: 80
java 集合分组与排序
4星 · 用户满意度95%
假设有一个字符串集合`Set<String> strs`,你可以使用Java 8引入的Stream API来对其进行分组和排序,具体代码如下:
```java
Map<String, List<String>> result = strs.stream()
.sorted() // 按照字符串自然排序
.collect(Collectors.groupingBy(s -> s.substring(0, 1))); // 按照字符串的第一个字符分组
// 输出结果
result.forEach((k, v) -> {
System.out.println(k + ": " + v);
});
```
上述代码将会按照字符串的第一个字符进行分组,并且在每个分组内对字符串进行自然排序,最终将结果存储在一个`Map<String, List<String>>`中,其中键为第一个字符,值为该字符开头的所有字符串的集合。你可以根据需要更改分组和排序的规则。
阅读全文