第 13 课2026.09.16
把密封状态映射为界面文字。
第 13 课:when穷尽渲染状态
- 日期:2026-09-16
- 课程序号:第 13 课
- 知识点:when穷尽渲染状态
用途
把密封状态映射为界面文字。
核心概念
when 覆盖 sealed 层级所有直接子类型时无需 else。
最小代码或操作示例
text
fun label(state: LessonState): String = when (state) {
LessonState.Loading -> "加载中"
is LessonState.Ready -> state.lesson.title
}3~5 分钟练习
传入 LessonState.Loading 并检查返回文字。
参考答案
label(LessonState.Loading) 返回“加载中”。
与上一课的联系
继承上一课的 sealed class;本课只增加穷尽映射;下一课可让不同状态携带各自需要的数据。
时效校验
时效校验:2026-09-21(当前 Kotlin 2.4.20;sealed 层次与穷尽 when 自 Kotlin 1.0 可用,未见废弃标记)。