stream流需要判空吗
时间: 2023-07-08 13:04:35 浏览: 98
Java如何使用Optional与Stream取代if判空逻辑(JDK8以上)
在使用 stream 流时,如果可能存在空值(null),建议在调用任何终止操作之前对流进行空值检查。否则,在空值上调用流操作会导致空指针异常。
例如,可以使用 Optional 类型来避免空指针异常。示例代码如下:
```
List<String> list = Arrays.asList("apple", "banana", null, "orange");
list.stream()
.filter(Objects::nonNull) // 过滤掉空值
.forEach(System.out::println);
```
在上面的示例中,我们使用 `Objects::nonNull` 过滤掉了空值。这样可以确保在调用 `forEach` 方法之前不会出现空指针异常。
阅读全文