2017-04-21 9 views
1

私はSpark Java APIプロジェクトでmapToPair関数を書いています。私は、Scalaのなしと同様の機能を持っている必要がありますし、いくつかはそれは多分私は例えば何(Scalaではなし)SpalaのJava APIでScala someとnoneに相当する

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を使用している場合、オプションでスカラのOptionと似ています。 hereに続きます。

または、いくつかのオブジェクトを新しいもので作成することもできます。scala.None $ .MODULE $によってSome(data)とNoneを作成できます。Noneはシングルトンです。

関連する問題