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函数类似,还可以链式调用

相关推荐
亚空间仓鼠3 分钟前
Python学习日志(四):实例
开发语言·python·学习
Fanfanaas5 分钟前
Linux 系统编程 进程篇 (二)
linux·运维·服务器·c语言·开发语言·学习
油丶酸萝卜别吃9 分钟前
高效处理数组差异:JS中新增、删除、交集的最优解(Set实现)
开发语言·前端·javascript
GISer_Jing10 分钟前
前端动画技术全解析:从GIF到WebGPU
前端·ai·动画·webgl
HoneyMoose10 分钟前
Npmp 安装时候提示警告: error (ERR_INVALID_THIS)
开发语言
LIO11 分钟前
Vue3 + TS 企业级工程化项目全套实战(Vue3 + Vite + Pinia + VueRouter + Element Plus)
前端·vue.js
gskyi11 分钟前
时间格式化神器:智能显示相对时间
开发语言·javascript·ecmascript
古城小栈17 分钟前
Rust在当下AI领域的用武之地:从底层加速到上层应用全解析
开发语言·人工智能·rust
lsx20240617 分钟前
SQLite Where 子句详解
开发语言
李昊哲小课18 分钟前
安装 npm/pnpm/yarn 换国内镜像 统一目录管理全局包+缓存
前端·缓存·npm·pnpm·yarn