kotlin 作用域函数run

测试下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.

相关推荐
晴天的雨.9927 小时前
【C++算法】和为s的两个数
开发语言·数据结构·c++·算法
IvanCodes12 小时前
Python 数据处理(十三):JSON、CSV 与数据序列化
开发语言·python
alexhilton12 小时前
藏在设备上的秘密,终究藏不住
android·kotlin·android jetpack
aramae13 小时前
MySQL复合查询(8)
java·c语言·开发语言·后端·算法
qq_25183645716 小时前
springboot vue3 开发实现 拼豆管理系统
java·开发语言·ai编程
郑州光合科技余经理17 小时前
同城外卖小程序开发:下单成功后,后台导出能不能对上用户端状态
开发语言·前端·git·后端·uni-app·php·ai编程
知识分享小能手17 小时前
C++ 学习教程,从入门到精通,C++ 入门知识 — 完整知识点(1)
开发语言·c++·学习
+VX:Fegn089517 小时前
计算机毕业设计|基于springboot + vue旅游管理系统(源码+数据库+文档)
java·开发语言·vue.js·spring boot·课程设计
ai2work17 小时前
ch15 加载模型与初始化上下文
kotlin
阿里嘎多学长18 小时前
2026-09-20 GitHub 热点项目精选
开发语言·程序员·github·代码托管