本文介绍了在Java 8中映射后过滤空值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在Java 8中,我是使用map
和filters
的新手.目前,对于某些ML算法,我正在使用Spark ML
库.我有以下代码:
I'm new in using map
and filters
in Java 8. I'm currently using Spark ML
library for some ML algorithms. I have the following code:
// return a list of `Points`.
List<Points> points = getPoints();
List<LabeledPoint> labeledPoints = points.stream()
.map(point -> getLabeledPoint(point))
.collect(Collectors.toList());
如果数据正确,则函数getLabeledPoint(Point point)
返回新的LabeledPoint
,否则返回null.如何在map
之后过滤(删除)null
LabeledPoint
对象?
The function getLabeledPoint(Point point)
returns a new LabeledPoint
if the data is correct or null otherwise. How can I filter (remove) the null
LabeledPoint
objects after map
?
推荐答案
有 filter
方法:
// return a list of `Points`.
List<Points> points = getPoints();
List<LabeledPoint> labeledPoints = points.stream()
.map(point -> getLabeledPoint(point))
// NOTE the following:
.filter(e -> e != null)
.collect(Collectors.toList());
这篇关于在Java 8中映射后过滤空值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!