Syntactic Sugar
kotlin 常用语法糖
1. 作用域函数
函数 | Context | 返回值 | 用途 |
|---|---|---|---|
| it | 表达式结果 | 变换、防空指针 |
| this | 表达式结果 | 在对象作用域计算 |
| this | 对象本身 | 初始化配置对象 |
| it | 对象本身 | 副作用、调试 |
| this | 表达式结果 | 多次操作对象 |
2. 可空处理增强
?.空安全调用?:Elvis 替换as?安全类型转换!!强制非空(慎用)
3. 解构声明
语法:
val (x, y) = point
展开:
point.component1()
point.component2()
4. Lambda 简化
尾随 lambda:
f { ... }单参数默认名:
itreturn@label控制流标签
5. 操作符重载
示例:
operator fun plus(...)
operator fun get(index: Int)
operator fun contains(x)
6. 范围表达式
1..10
10 downTo 1
1..10 step 2
7. 扩展函数
fun String.x(): Int = ...
8. 属性委托
val x by lazy { ... }
var y by MyDelegate()
9. 函数引用
::func
object::method
10. when 作为表达式
val result = when (x) {
1 -> "a"
2 -> "b"
else -> "c"
}
11. Kotlin 集合 DSL
listOf(...)
mapOf(...)
buildList { add(1) }
12. 内联 inline
减少 lambda 分配,允许非局部 return。
27 January 2026