美文网首页
kotlin 作用域函数

kotlin 作用域函数

作者: 落叶随风花落入泥 | 来源:发表于2020-08-07 11:03 被阅读0次

kotlin 作用域函数

作用:它们的唯一目的是在对象的上下文中执行代码块。当对一个对象调用这样的函数并提供一个 [lambda 表达式]时,它会形成一个临时作用域。在此作用域中,可以访问该对象而无需其名称
共有以下五种:let、run、with、apply 以及 also,如果不使用作用域函数,我们每次都要创建新对象,在用新对象操作对象等,这样就引入了一个新变量。

此五种作用域函数,引用的上下文 ,分别是this和it

run、with、apply 使用的是this上下文,对于主要对对象成员最操作的时候,
使  用this上下文,用于区分接受者的成员及外部成员或函数。
let 及 also 将上下文对象作为 lambda 表达式参数使用的是it,it比this简短,
更容易阅读,当调用对象函数或属性时,不能像 this 这样隐式地访问对象.
因此,当上下文对象在作用域中主要用作函数调用中的参数时,使用 it 作为
上下文对象会更好。若在代码块中使用多个变量,则 it 也更好.此外,当将上
下文对象作为参数传递时,可以为上下文对象指定在作用域内的自定义名称,
代码更容易阅读。

五种作用域返回的值

apply 及 also 返回上下文对象
let、run 及 with 返回 lambda 表达式结果.

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

对一个非空(non-null)对象执行 lambda 表达式:let
将表达式作为变量引入为局部作用域中:let
对象配置:apply
对象配置并且计算结果:run
在需要表达式的地方运行语句:非扩展的 run
附加效果:also
一个对象的一组函数调用:with

相关文章

  • 详解Kotlin中的作用域函数

    Kotlin作用域函数 作用域函数,Kotlin在语法层面支持拓展函数,作用域函数,作用域函数是指对数据做一些变换...

  • kotlin中Scope函数

    Scope函数翻译过来就叫作用域函数吧,Kotlin中的作用域函数包含let, run with, apply, ...

  • Kotlin修炼指南

    Kotlin修炼指南 作用域函数 作用域函数是Kotlin中的一个非常有用的函数,它主要分为两种,一种是拓展函数式...

  • Kotlin 常用作用域函数,区别和使用

    1. 有关作用域函数: Kotlin 中有很多作用域函数, 但是常见的使用场景是不同的。 常见的五种作用域函数 l...

  • [Kotlin Tutorials 10] Scope Func

    Scope Functions: Kotlin中的作用域函数 Kotlin标准库提供了5个scope functi...

  • Kotlin 作用域函数

    1、作用域函数区别表 学习方法:取上述demo,将let、run、with、apply、also相互替换更改试试K...

  • kotlin 作用域函数

    kotlin 作用域函数 作用:它们的唯一目的是在对象的上下文中执行代码块。当对一个对象调用这样的函数并提供一个 ...

  • Kotlin作用域函数

    kotlin中经常出现run、with、let、also、apply,开始时候容易迷糊,有什么用有什么区别? 一:...

  • Kotlin:作用域函数

    前言 最近使用kotlin语言开发了新的项目,kotlin的一些特性和大量的语法糖相当好用,相比于java,开发效...

  • Kotlin 作用域函数

    上面是常用的五个作用域函数 run let with apply also从定义上我们看出apply 和 also...

网友评论

      本文标题:kotlin 作用域函数

      本文链接:https://www.haomeiwen.com/subject/gotfdktx.html