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
网友评论