java stream.collect如何处理空值问题

avatar
作者
猴君
阅读量:0

在Java中,使用Stream API的collect()方法可以将流中的元素收集到一个集合中。当处理可能包含空值(null)的流时,可以使用filter()方法过滤掉空值,以避免在收集过程中出现NullPointerException。

以下是一个示例,演示了如何使用filter()方法过滤掉空值:

import java.util.Arrays; import java.util.List; import java.util.stream.Collectors;  public class Main {     public static void main(String[] args) {         List<String> strings = Arrays.asList("Hello", "World", null, "Java", null);          // 使用filter()方法过滤掉空值         List<String> nonNullStrings = strings.stream()                 .filter(s -> s != null)                 .collect(Collectors.toList());          System.out.println(nonNullStrings); // 输出: [Hello, World, Java]     } } 

在这个示例中,我们首先创建了一个包含空值和非空值的字符串列表。然后,我们使用stream()方法创建一个流,并使用filter()方法过滤掉空值。最后,我们使用collect()方法将过滤后的非空值收集到一个新的列表中。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!