stream流对数据判空
时间: 2023-08-12 22:10:27 浏览: 141
在处理流数据时,需要对数据进行判空操作,以避免出现空指针异常等错误。可以使用Java 8中的Stream API提供的方法来进行判空操作,如下所示:
1. 使用filter()方法过滤掉空元素:
```
List<String> list = Arrays.asList("apple", "orange", null, "banana", null);
List<String> filteredList = list.stream()
.filter(str -> str != null)
.collect(Collectors.toList());
```
2. 使用map()方法将空元素替换为默认值:
```
List<String> list = Arrays.asList("apple", "orange", null, "banana", null);
List<String> replacedList = list.stream()
.map(str -> str == null ? "unknown" : str)
.collect(Collectors.toList());
```
3. 使用Optional类来处理空值:
```
List<String> list = Arrays.asList("apple", "orange", null, "banana", null);
List<Optional<String>> optionalList = list.stream()
.map(Optional::ofNullable)
.collect(Collectors.toList());
```
这些方法可以帮助我们在处理流数据时更加安全地进行判空操作。
阅读全文