scala - def with with without = =

Sea*_*lly 1 scala function

以下两者之间是否存在差异?

scala> def foo() = {}
foo: ()Unit

scala> def foo() {}
foo: ()Unit
Run Code Online (Sandbox Code Playgroud)

他们似乎是一样的.
是否支持这两个原因?

Leo*_*Leo 6

def foo() {}
Run Code Online (Sandbox Code Playgroud)

相当于(并强制执行)

def foo(): Unit = {}
Run Code Online (Sandbox Code Playgroud)

def foo() = {}
Run Code Online (Sandbox Code Playgroud)

将应用类型推断来确定方法体的结果类型.

因此,前两个选项Unit是唯一允许的返回类型,而在第三个中,返回类型取决于实现.