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