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

相关推荐
一水鉴天17 小时前
整体设计 定稿 之22 dashboard.html 增加三层次动态记录体系仪表盘 之1
前端·html
曼巴UE517 小时前
UE C++ 字符串的操作
java·开发语言·c++
天天进步201517 小时前
Linux 实战:如何像查看文件一样“实时监控” System V 共享内存?
开发语言·c++·算法
凛_Lin~~17 小时前
安卓/Java语言基础八股文
java·开发语言·安卓
八年。。17 小时前
Python 版本确认方法
开发语言·笔记·python
foundbug99917 小时前
基于MATLAB Simulink的双向DC-DC变换器仿真程序实现
开发语言·matlab
张拭心17 小时前
程序员越想创业,越不要急着动手
前端·人工智能
舒一笑17 小时前
在低配云服务器上实现自动化部署:Drone CI + Gitee Webhook 的轻量级实践
前端·后端·程序员
龙国浪子17 小时前
从零到一:打造专业级小说地图设计工具的技术实践
前端·electron
元亓亓亓17 小时前
考研408--操作系统--day8--操作系统--虚拟内存&请求分页&页面置换/分配
android·java·开发语言·虚拟内存