为什么在Unit
是返回类型的情况下执行以下工作
def put(x: Int): Unit
同时将()
用作返回类型
def put(x: Int): ()
给出了=> expected
错误。这两个签名有什么区别?
答案 0 :(得分:8)
请注意,()
是类型Unit
的值,类似于7
是类型Int
的值,所以写
def put(x: Int): ()
有点像写
def f(x: Int): 7
我们错误地将值放在期望返回 type 的位置。