Kotlin作用域函数:let、also、run、apply、with

​​​​​​​

let函数

使用场景:可空变量的操作,无需判空

Kotlin 复制代码
p?.let {
        it.name = "lily"
        it.age = "21"
    }

also函数

使用场景:多个扩展函数链式调用(返回值是本身)

Kotlin 复制代码
p?.also {
        it.name = "deni"
        it.age = "26"
    }?.displayInfo() 

with函数

使用场景:可以省去类名重复,直接调用类的方法就行

Kotlin 复制代码
 with(p) {
       name = "leon"
       age = "26"
    }

run函数

使用场景:既可以空变量的操作,无需判空,又可以省去类名重复,直接调用类的方法就行

apply函数

使用场景:跟run函数类似,还可以链式调用

相关推荐
kevinzzzzzz几秒前
基于模块联邦打通多系统的探索
前端·javascript
小胖霞4 分钟前
彻底搞懂 JWT 登录认证与路由守卫(五)
前端·vue.js·node.js
用户93816912553605 分钟前
VUE3项目--组件递归调用自身
前端
昔人'14 分钟前
CSS content-visibility
前端·css
free-elcmacom18 分钟前
MATLAB信号分析:眼图生成与高速系统评估
开发语言·matlab·信号处理
灵魂学者19 分钟前
Vue3.x —— ref 的使用
前端·javascript·vue.js
多则惑少则明26 分钟前
【算法题4】找出字符串中的最长回文子串(Java版)
java·开发语言·数据结构·算法
梦65031 分钟前
VUE树形菜单组件如何实现展开/收起、全选/取消功能
前端·javascript·vue.js
【建模先锋】34 分钟前
基于Python的智能故障诊断系统 | SmartDiag AI (基础版)V1.0 正式发布!
开发语言·人工智能·python·故障诊断·智能分析平台·大数据分析平台·智能故障诊断系统