美文网首页
Kotlin的run,let,apply,also,with的用

Kotlin的run,let,apply,also,with的用

作者: 132xin | 来源:发表于2020-11-06 11:04 被阅读0次

run函数

用法一

定义:public inline fun(block:()->R):R=block()

功能:调用run模块函数块,返回函数值是函数最后的一行,或者指定return表达式。

示例: image.png
用法二

定义 :public inline fun <T, R> T.run(block: T.() -> R): R = block()

功能:调用某对象的run函数,在函数块内可以通过this调用该对象。返回函数值是函数最后的一行,或者指定return表达

示例: image.png

let函数

定义:public inline fun <T, R> T.let(block: (T) -> R): R = block(this)

功能:调用某个对象的let函数,则将该对象作为函数的参数。在函数块中可以通过it指代对象。返回值是函数最后的一行,或者指定return表达
示例:


image.png

apply函数

定义:public inline fun T.apply(block: T.() -> Unit): T { block(); return this }

功能:调用某对象的apply函数,在函数块内可以通过this指代该对象。返回值是对象的本身
示例:


image.png

also函数

定义:public inline fun T.also(block: (T) -> Unit): T { block(this); return this }

功能:调用某对象的also函数,在函数块内可以通过it指代该对象。返回值是对象的本身
示例:


image.png

with函数

定义:public inline fun <T, R> with(receiver: T, block: T.() -> R): R = receiver.block()

功能:with函数和前面的几个函数的使用方式不同,它不再是以扩展的形式存在的,它是将对象作为函数的参数,在函数块内可以通过this指定该对象。返回值是函数最后的一行,或者指定return表达
示例:


image.png

相关文章

网友评论

      本文标题:Kotlin的run,let,apply,also,with的用

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