stream flatMap的用法
时间: 2023-11-21 22:55:07 浏览: 82
flatMap()方法是Java8 Stream API中的一个中间操作,它可以将多个stream流合并成一个stream。在合并的过程中,你可以结合其他的API做一些过滤或者转换等操作。下面是一些使用flatMap()方法的例子:
```java
List<List<String>> list = Arrays.asList(
Arrays.asList("a", "b", "c"),
Arrays.asList("d", "e", "f"),
Arrays.asList("g", "h", "i")
);
// 将多个List<String>合并成一个List<String>
List<String> result = list.stream()
.flatMap(Collection::stream)
.collect(Collectors.toList());
// 将多个List<String>合并成一个Set<String>
Set<String> resultSet = list.stream()
.flatMap(Collection::stream)
.collect(Collectors.toSet());
// 将多个List<String>合并成一个String
String str = list.stream()
.flatMap(Collection::stream)
.collect(Collectors.joining(", "));
```
在上面的例子中,我们使用flatMap()方法将多个List<String>合并成一个List<String>、Set<String>或者String。需要注意的是,flatMap()方法返回的是一个Stream对象,因此我们可以继续对其进行其他的操作。
阅读全文