Kotlin中T.()->Unit 、(T) -> Unit 、()->Unit傻傻分不清
这三个都是函数,返回值为unit,可以返回其他值,这里返回Unit只是为了方便理解
- T.()->Unit :我理解给类T定义了一个扩展函数,该函数没有形参,没有返回值,当然也可以增加参数与返回值
- (T) -> Unit :定义一个普通函数,带有参数,类型为T,没有返回值
- () -> Unit :定义一个普通函数,没有参数,没有返回值
代码示例
下面的代码定义了类T的三个扩展函数:myApply ,myAlso ,myStandard ,分别接受一个参数,参数形式是函数,分别是T.()->Unit ,(T) -> Unit ,() -> Unit
(myApply 参考标准函数库Standard.kt里的apply 函数,<