测试下run函数:
Kotlin
fun main() {
testRun()
}
class Person {
var name: String = ""
var age: Int = 0
}
fun testRun() {
val panJingLian = Person()
val isAult = panJingLian.run { // 上下文引用:this(可省略);
name = "潘金莲"
age = 22
age >= 18 // 返回代码块最后一行结果;
}
println("我是${panJingLian.name}, ${if(isAult) "我已成年" else "我还未成年"}。")
// 还可以这样,没有上下文,直接调用run函数:
val str = run {
val str1 = "我堂堂吕布,"
val str2 = "怎么成了三姓家奴?"
str1 + str2 // 返回最后一个表达式的值
}
println(str)
}
运行:

ok.