kotlin中经常出现run、with、let、also、apply,开始时候容易迷糊,有什么用有什么区别?
一:作用
作用域函数 用于扩展方便开发者编码的内置函数,能大大提高开发者的开发效率。
首页明确一点他们都是锦上添花,不用一样可以写代码,但是优秀的代码必然需要使用作用域函数提高效率。
二:定义
Kotlin 标准库包含几个函数,它们的唯一目的是在对象的上下文中执行代码块。当对一个对象调用这样的函数并提供一个 lambda 表达式时,它会形成一个临时作用域。在此作用域中,可以访问该对象而无需其名称。这些函数称为作用域函数。共有以下五种:let、run、with、apply 以及 also。
这些函数基本上做了同样的事情:在一个对象上执行一个代码块。不同的是这个对象在块中如何使用,以及整个表达式的结果是什么。
这里所说的标准函数主要来自于标准库中在文件Standard.kt中的所有函数。
三let例子
简化代码,方便统一判断空处理
五run、with、let、also、apply区别
https://juejin.im/post/5ae02dd051882567137dde82
https://www.jianshu.com/p/d9b2d8e83925