我一直在练习火花。我对scala不太熟悉,并且想要尝试java代码。对于地图和flatmap的以下基本操作,我如何用Java编写下面的代码spark flatmap - 斯卡拉java代码
sc.parallelize(List(1,2,3)).flatMap(x=>List(x,x,x)).collect
sc.parallelize(List(1,2,3)).map(x=>List(x,x,x)).collect
我一直在练习火花。我对scala不太熟悉,并且想要尝试java代码。对于地图和flatmap的以下基本操作,我如何用Java编写下面的代码spark flatmap - 斯卡拉java代码
sc.parallelize(List(1,2,3)).flatMap(x=>List(x,x,x)).collect
sc.parallelize(List(1,2,3)).map(x=>List(x,x,x)).collect
这是基本相同:
sc.parallelize(Arrays.asList(1,2,3)).flatMap(x->Arrays.asList(x,x,x).iterator()).collect();
sc.parallelize(Arrays.asList(1,2,3)).map(x->Arrays.asList(x,x,x)).collect();
其中sc
是JavaSparkContext
(假设你使用Java 8和Spark 2.0.0)。
我得到的编译错误是“在lambda表达式中出现错误返回类型。[错误] java.util.Iterator
我给出的代码应该适用于Spark 2.0.0,为以前的版本删除'iterator()'。 –
这个答案在2.1.0中不起作用 – bearrito
您正在使用哪个java版本? –