Scala 14:错误:设备不带参数

时间:2019-03-08 05:02:03

标签: java scala

scala世界的新手和练习,在Windows REPL中的代码行下执行。出现错误Unit不接受参数。对此有任何想法。

scala> :paste
// Entering paste mode (ctrl-D to finish)

val x:Int = 10
println(x)
{
val x:Int =20
println(x)
}
println(x)

// Exiting paste mode, now interpreting.

<pastie>:14: error: Unit does not take parameters
{
^

scala>

1 个答案:

答案 0 :(得分:4)

这是因为scala看到println()时认为{}正在采用另一个参数。您也可以使用以下代码进行测试,

scala> println(8){}
                 ^
       error: Unit does not take parameters

scala> println(1)()
                 ^
       error: Unit does not take parameters

您需要在println(){}之间加一行以使编译器满意。

示例:https://scastie.scala-lang.org/prayagupd/jbPWBesyTvihwue8soE5Og

scala> :paste
// Entering paste mode (ctrl-D to finish)

val x:Int = 10
println(x)

{
val x:Int =20
println(x)
}
println(x)

// Exiting paste mode, now interpreting.

10
20
10
x: Int = 10