0
はなぜエラーにスカラ - エラー:ステートメントの不正スタート(何の修飾子がここで許可されていない)
error: illegal start of statement (no modifiers allowed here)
override def toString = {
^
スパーク・シェルから(.scalaファイルに包まれた)次のコードをロードする(スパークバージョンを入手できますか2.2.0、Scalaバージョン2.11.8)?
import org.apache.spark.util.StatCounter
class NAStatCounter extends Serializable
{
val stats: StatCounter = new StatCounter()
var missing: Long = 0
def add(x: Double): NAStatCounter = {
if (java.lang.Double.isNaN(x)) {
missing += 1
} else {
stats.merge(x)
}
this
}
def merge(other: NAStatCounter): NAStatCounter = {
stats.merge(other.stats)
missing += other.missing
this
}
override def toString = {
"stats: " + stats.toString + " NaN: " + missing
}
}
object NAStatCounter extends Serializable {
def apply(x: Double) = new NAStatCounter().add(x)
}
それは本からのサンプルコードであり、それが私はこのエラーを取得する奇妙に見える...
これは逐語コードですか?エラーは解析エラーであり、再現できません。 –
これは奇妙です。私は最初からコードを書き直しましたが、比較ツールは同じコードだと言っていますが、今度はエラーが発生します。 エラー:見つからない:StatCounter(行5) – user1403546
を入力してください。クラス定義と同じ行ですが、 "error:not found:type StatCounter"が表示されます – user1403546