Java 8 Stream Filter 过滤null值

来源:互联网 发布:淘宝商城男装t恤 编辑:程序博客网 时间:2024/06/07 00:22

Java 8 Stream Filter 过滤null值

查看Stream流包含的null值。

Java8Examples.java
package com.mkyong.java8;import java.util.List;import java.util.stream.Collectors;import java.util.stream.Stream;public class Java8Examples {    public static void main(String[] args) {        Stream<String> language = Stream.of("java", "python", "node", null, "ruby", null, "php");        List<String> result = language.collect(Collectors.toList());        result.forEach(System.out::println);    }}

output

javapythonnodenull   // <--- NULLrubynull   // <--- NULLphp
Stream.filter(x -> x!=null)
Java8Examples.java
package com.mkyong.java8;import java.util.List;import java.util.stream.Collectors;import java.util.stream.Stream;public class Java8Examples {    public static void main(String[] args) {        Stream<String> language = Stream.of("java", "python", "node", null, "ruby", null, "php");        //List<String> result = language.collect(Collectors.toList());        List<String> result = language.filter(x -> x!=null).collect(Collectors.toList());        result.forEach(System.out::println);    }}

Output

java python node ruby php

或者,过滤器 Objects::nonNull

import java.util.List;List<String> result = language.filter(Objects::nonNull).collect(Collectors.toList());