在 Scala 中,如何使用匿名類主體中的空格呼叫單引數方法?
add "Answer3" 下面不起作用
trait Question {
def add(answer:String):Unit = {
println("Received the answer=" answer)
}
}
object Test {
val question:Question = new Question {
this add "Answer1" // working
add("Answer2") // working
add "Answer3" // NOT working, why? -> error: ';' expected but string literal found.
}
}
uj5u.com熱心網友回復:
您正在嘗試混合兩種不同且相互沖突的便利語法選項。
instance.method(argument)
... 可以表示為 ...
instance method argument
...而且,如果method()沒有引數,那么也可以用空格表示,但決議器需要一點幫助。
instance method;
在單獨的軌道上,如果instance是this,則可以洗掉。
method(argument)
但是您不能洗掉括號,因為決議器試圖將其解釋為instance method并失敗。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/393580.html
