文章目录
一、尾随 Lambda - Trailing Lambda 语法
二、Kotlin 中使用 Lambda 表达式替代对象表达式原理
1、Lambda 替换对象表达式
2、原理分析
3、示例分析...表达式替代对象表达式原理
----
1、Lambda 替换对象表达式
在使用 Kotlin 开发时 , 经常遇到这种情况 , 最后一个函数是匿名内部类 , 匿名内部类中只实现了一个函数 , 此时使用 Lambda...;
该 接口类型 中 只定义了一个函数 ;
可以 省略掉 匿名内部类 也就是 对象表达式的定义 , 直接使用 接口中的函数 类型对象 , 也就是 Lambda 表达式 / 匿名函数 / 闭包 来替代该...表达式 , 其 Lambda 表达式类型为
(View) -> Unit
传入 View 类型实例对象 , 返回值为 void , 对应的就是 OnClickListener 接口中的 void onClick..., 就会在编译时报错 ,
报错信息如下 :
返回值设置错误 : 设置错误的返回值 , 会提示
'return' is not allowed here
参数设置错误 : 默认参数是 it:View