从Kotlin文档中:
如果函数不返回任何有用的值,则其返回类型为Unit。单位是一种只有一个值-Unit.VALUE的类型。此值不必显式返回:
fun printHello(name : String?) : Unit {
if (name != null)
print("Hello, $name!")
else
print("Hi there!")
// We don't need to write 'return Unit.VALUE' or 'return', although we could
}
返回单位功能的目的是什么?为什么有VALUE?这个值是多少?
最佳答案
目的与C或Java的void
相同。只有Unit是适当的类型,因此可以将其作为通用参数等进行传递。
Nothing
,表示“根本没有任何值”,即计算未正常完成(永远循环或引发异常)。我们承受不起意义的冲突。 Unit