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

相关推荐
ShineWinsu8 分钟前
对于C++中stack和queue的详细介绍
开发语言·数据结构·c++·面试·stl·queue·stack
List<String> error_P10 分钟前
Python蓝桥杯常考知识点-模拟
开发语言·python·蓝桥杯
油墨香^_^18 分钟前
Spring Cloud Feign 进阶详解:契约测试、负载均衡、文件上传与原生API
java·开发语言
比奇堡鱼贩26 分钟前
python第五次作业
开发语言·前端·python
半兽先生43 分钟前
使用 retire.js 自动检测前端 JavaScript 库漏洞
开发语言·前端·javascript
扶苏10021 小时前
详解Vue3的自定义 Hooks
前端·javascript·vue.js
二级小助手1 小时前
26年计算机二级web考试介绍【内附真题】
前端·计算机二级·全国计算机二级·web二级·二级web·前端二级·全国计算机web二级
之歆2 小时前
HA 高可用集群指南
java·开发语言
lsx2024062 小时前
电子商务网站主机:选择与维护指南
开发语言
专注VB编程开发20年2 小时前
WebView2 处理跨域访问限制,Frame脚本执行,难度比CEF大10倍
前端·javascript·.net