美文网首页
Kotlin中let、run、with、apply

Kotlin中let、run、with、apply

作者: S_Snail | 来源:发表于2021-07-02 11:22 被阅读0次

1、let与run的区别:

(1)let使用关键字it来引用上下文对象;run函数以this作为上下文对象。

(2)it可重命名为lambda参数

2、with(receiver)传入一个对象作为receiver,可以修改receiver的属性

    eg:

    class User(){var name:String?=null, var age:Int = 0}

    val user = User()

    with(user){

        name = "法外狂徒张三"

        age = 18

    }

3、apply对象的上下文引用为this,不接受函数块中的返回值,返回的是自己的T类型对象

4、also是T的扩展函数,返回值为自己的T类型对象;对象的上下文引用为it

    val user = User().also{

        it.name = "张三"

        it.age = 40

    }

相关文章

网友评论

      本文标题:Kotlin中let、run、with、apply

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