Unit和()Unit有什么区别

Sri*_*thy 2 scala

我编写了两个helloWorld函数,一个带有括号(),另一个没有。如果我使用带参数的参数(特别是带参数的参数或不带参数的参数)调用它,则效果很好。另一个没有参数定义的消息叫作“ unit does not take parameters”。我很困惑。

scala> def hWorld() = println("Hello World")
hWorld: ()Unit

scala> def hWorld = println("Hello World")
hWorld: Unit

scala> hWorld
Hello World

scala> hWorld()
<console>:10: error: Unit does not take parameters
              hWorld()
                    ^
scala> def hWorld2() = println("Hello World")
hWorld2: ()Unit

scala> hWorld2
Hello World

scala> hWorld2()
Hello World

scala> 
Run Code Online (Sandbox Code Playgroud)

Sum*_*uma 7

()Unit是一种期望参数列表Unit为空的方法,是一种根本不需要参数列表的方法。第一个称为nilary,第二个称为null。

无效和无效方法