如何将其更改为val函数

时间:2018-08-07 21:22:55

标签: java scala apache-spark

javafx...Rectangle

我想做类似def nothing(row:Row): Unit = { } 的事情,并且我希望函数在Java中是静态等效的。我想将rdd.foreach(functionHere)更改为def,但我只是想不出语法。

我基本上想拥有基本上是val的Java代码。

我该怎么做?

有可能吗?

2 个答案:

答案 0 :(得分:0)

您是否意味着要将该函数作为变量传递?如果是这样,您可以编写一个函数文字:

val nothing = (row: Row) => Unit

,然后调用以下命令来调用它:

nothing(aRow)

答案 1 :(得分:0)

您不需要使用valrdd.foreach(MyScalaClass.nothing)应该可以正常工作。 Scala会自动为您将方法转换为函数。相当于Java的rdd.foreach(MyScalaClass::nothing)