kotlin语法

apply:

于不返回值且主要在接收者(this)对象的成员上运行的代码块使用 applyapply 的常见情况是对象配置。这样的调用可以理解为“将以下赋值操作应用于对象

also

上下文对象作为 lambda 表达式的参数(it)来访问。 返回值是上下文对象本身。

当你在代码中看到 also 时,可以将其理解为“并且用该对象执行以下操作”。

with 

可以理解为“对于这个对象,执行以下操作。

函数对象引用返回值是否是扩展函数
let it Lambda 表达式结果
run this Lambda 表达式结果
run - Lambda 表达式结果 不是:调用无需上下文对象
with this Lambda 表达式结果 不是:把上下文对象当做参数
apply this 上下文对象
also it 上下文对象

以下是根据预期目的选择作用域函数的简短指南:

  • 对一个非空(non-null)对象执行 lambda 表达式:let
  • 将表达式作为变量引入为局部作用域中:let
  • 对象配置:apply
  • 对象配置并且计算结果:run
  • 在需要表达式的地方运行语句:非扩展的 run
  • 附加效果:also
  • 一个对象的一组函数调用:with
posted @ 2023-01-08 22:01  it世界库  阅读(30)  评论(0编辑  收藏  举报