第 15 课2026.09.18
在穷尽 when 中读取 Ready 状态携带的数量。
第 15 课:读取sealed分支数据
- 日期:2026-09-18
- 课程序号:第 15 课
- 知识点:读取sealed分支数据
用途或适用场景
在穷尽 when 中读取 Ready 状态携带的数量。
核心概念
智能类型转换让 Ready 分支直接访问 count;else 不需要出现。
最小代码或操作示例
text
sealed interface State { data object Loading : State; data class Ready(val count: Int) : State }
fun label(state: State) = when (state) {
State.Loading -> "加载中"
is State.Ready -> "共 ${state.count} 节"
}3~5 分钟练习
传入 State.Ready(3) 并调用 label。
参考答案
label(State.Ready(3)) 返回“共 3 节”。
与上一课的联系
继承上一课携带数据的 sealed 状态;本课只在 Ready 分支读取 count;完成后下一课可加入错误状态。
时效校验
时效校验:2026-09-21(当前 Kotlin 2.4.20;data object 自 Kotlin 1.9 起稳定,未见本课方案的废弃标记)。