Java 8 – ストリームからヌル値をフィルタリングする
ヌル値を含む `Stream`を見直してください。
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); } }
出力
java python node null // Solution To solve it, uses 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); } }
出力
java python node ruby php
- あるいは、 `Objects
-
nonNull`でフィルタリングしてください。
import java.util.List; List<String> result = language.filter(Objects::nonNull).collect(Collectors.toList());
参考文献
JavaDoc]。リンク://java8/java-8-streams-filter-examples/[Java 8 Streamsフィルタ
8つのコレクターJavaDoc]
リンク://タグ/フィルタ/[フィルタ]リンク://タグ/java8/[java8]
null
リンク://タグ/ストリーム/[ストリーム]