2017-04-21 68 views
1

我在Spark Java API项目中编写了mapToPair函数。我需要有类似于斯卡拉无和功能的一些,因此可能对特定的地图,我不返回任何东西(Scala中无)在Spark Java API中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.

+0

如果您有java 8,您现有的代码可能会减少到: 'JavaPairRDD sensorDataDoubleRDD = sensorDataDoubleDF.toJavaRDD()。mapToPair(x-> null);'。如果你想坚持java,至少应该使用支持lamda表达式的java 8。 – vefthym

回答

2

如果您使用的是Java 8,那么您可以使用Optional,它与Scala中的Option类似。您可以按照here了解更多信息。

或者你可以通过新建一些对象(数据)和无scala.None $ .MODULE $来创建一个对象,因为无是单例。