let函数表示
调用let函数则表示调用一个以调用对象本身为参数的方法,在方法中可以以it代替指调用对象本身返回值为return 指向的值或者最后一行的值
fun extendTest(): String? {
var str = "str"
println(str.let { it + "1" }) //**返回目标对象it 返回最后一行可以是修改过的值**
println(str.apply { this.reversed() }) //**返回自己 ,不会返回修改过的值**
println(with("str"){
"fucking" //**无需调用对象(不以扩展函数出现) 可以返回任意其他值**
})
println(str.also {
it.reversed() }) //返回自己 ,不会返回修改过的值
println(str?.run {
//类似let方法
subSequence(2, 3) //调用调用者的方法时使用this代指,可以省略this
this.length //最后一行为返回值可以没有返回值
})
return null
}
回头补充run的语法
it | this | return(返回值) |
---|---|---|
let | run | with目标对象 |
also | apply | 本身 |
网友评论