用stream流的filter方法过滤后怎样收集存到Optional类型中
时间: 2024-03-07 13:46:30 浏览: 53
JDK1.8对于集合操作的简化处理的应用
可以使用`findFirst()`或`findAny()`方法将过滤后的结果收集到`Optional`类型中。例如,假设有一个`List<Integer>`类型的列表,要过滤出其中大于10的第一个元素,可以这样做:
```java
List<Integer> list = Arrays.asList(5, 10, 15, 20);
Optional<Integer> result = list.stream()
.filter(i -> i > 10)
.findFirst();
```
这里使用`filter()`方法过滤出大于10的元素,然后使用`findFirst()`方法将第一个符合条件的元素收集到`Optional`类型中。如果列表中不存在符合条件的元素,则`Optional`值为空。
阅读全文