kotlin常用函数with、let、run、apply的区别

一、let

1、let 是将一个lambda函数块block作为参数的函数

2、返回值为函数块的最后一行或指定return表达式

二、with:

1、with函数接受两个参数,第一个参数可以是一个任意类型的对象,第二个参数是一个Lambda表达式。

2、with函数会在Lambda表达式中提供第一个参数对象的上下文,返回值为表达式中的最后一行或指定return表达式

3、with提供第一个参数对象的上下文时,不改变参数对象的内部属性或方法

三、run:

1、run函数只接受一个Lambda参数,并且在Lambda表达式中提供调用对象的上下文

2、使用Lambda表达式中的最后一行代码作为返回值返回

3、run()函数和with()函数区别不大,with()函数需要传入一个参数,然后以这个参数作为上下文进行操作。run()函数不需要传入参数,但是他需要在一个对象的基础上进行操作

四、apply:

apply与run用法相似,不同点在于函数无法定义返回值,而是会自动返回调用对象本身而不是表达式最后一行。

五、总结:

猜你喜欢

转载自blog.csdn.net/ahui_123456789/article/details/127104198
今日推荐