java - Spark Java API 中 Scala some 和 none 的等价物

标签 java scala apache-spark

我在 Spark Java API 项目中编写了一个 mapToPair 函数。我需要有一个类似于 Scala None 和 Some 的功能,所以对于特定的 map ,我可能不会返回任何内容(scala 中没有)

JavaPairRDD<DateTime,Row> sensorDataDoubleRDD= sensorDataDoubleDF.toJavaRDD().mapToPair(new PairFunction<Row,DateTime,Row>() 
{
    private static final long serialVersionUID = 8355799038879757766L;
    @Override
    public Tuple2<DateTime,Row> call(Row row) {

        //return new Tuple2("s",1);
        return null;    
    }
});

System.out.println("the count is: "+sensorDataDoubleRDD.count());

例如,运行上述代码始终返回正计数值,而不是 0。

最佳答案

如果您使用的是 Java 8,您可以使用Optional,它与 scala 中的 Option 非常相似。您可以关注here了解更多。

或者你可以通过 new Some(data) 创建 Some 对象,通过 scala.None$.MODULE$ 创建 None 对象,因为 None 是单例。

关于java - Spark Java API 中 Scala some 和 none 的等价物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43538317/

相关文章:

java - 如何旋转列表中的非连续元素

java - 如果 netstat 另有说明,为什么我会得到 "java.net.BindException: Only one usage of each socket address"?

java - 异步与等待结果和同步之间有什么区别?

scala - 有没有一种方法可以在Scala中指定类型参数的子集,从而推断其余部分?

scala - 决定是否使用 Apache Spark 时应考虑哪些因素?

pandas - pyspark中的 Pandas cumcount

python - 通过 Python 使用 Spark 准备我的大数据

java - 正则表达式从 html 页面中提取 anchor 标记周围的文本

scala - Lagom 的多部分表单错误

scala - 如何在 SBT 0.10 中声明项目依赖?