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

相关推荐
It's now13 小时前
BeanRegistrar 的企业级应用场景及最佳实践
java·开发语言·spring
1024肥宅13 小时前
手写 new 操作符和 instanceof:深入理解 JavaScript 对象创建与原型链检测
前端·javascript·ecmascript 6
毕设源码-赖学姐13 小时前
【开题答辩全过程】以 基于Java的小区物业管理系统APP的设计与实现为例,包含答辩的问题和答案
java·开发语言
繁华似锦respect13 小时前
C++ & Linux 中 GDB 调试与内存泄漏检测详解
linux·c语言·开发语言·c++·windows·算法
吃肉的小飞猪13 小时前
uniapp 下拉刷新终极方案
前端
关关长语13 小时前
Vue本地部署包快速构建为Docker镜像
前端·vue.js·docker
jump68013 小时前
react的事件优先级
前端
小徐敲java13 小时前
python的FastAPI框架
开发语言·python·fastapi
soda_yo13 小时前
浅拷贝与深拷贝: 克隆一只哈基米
前端·javascript·面试
lsx20240613 小时前
CSS3 分页设计指南
开发语言