引言
本文展示如何过滤一个空值的流对象。
- 检查包含空值的流。
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 // <--- NULL
ruby
null // <--- NULL
php
- 使用 Stream.filter (x-x! null)
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());
// 或使用 Objects: : nonNull 进行筛选
List<String> result = language.filter(Objects::nonNull).collect(Collectors.toList());
result.forEach(System.out::println);
}
输出:
java
python
node
ruby
php
源码见:java-8-demo
系列文章详见:Java 8 教程
文档信息
- 本文作者:Zhang jinmiao
- 本文链接:http://zhangjinmiao.github.io/java8/2019/08/06/Java-8-Stream-%E8%BF%87%E6%BB%A4%E7%A9%BA%E5%80%BC.html
- 版权声明:自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)