Kotlin When

Kotlin when

当你需要写许多 if..else 表达式时,可以使用 when 表达式,它更易于阅读。

它用于选择要执行的多个代码块之一:

实例

使用工作日编号来计算工作日名称:

val day = 4

val result = when (day) {
  1 -> "Monday"
  2 -> "Tuesday"
  3 -> "Wednesday"
  4 -> "Thursday"
  5 -> "Friday"
  6 -> "Saturday"
  7 -> "Sunday"
  else -> "Invalid day."
}
println(result)

// 输出 "Thursday" (第 4 天)

亲自试一试

提示:when 表达式类似于 Java 中的 switch 语句。

它的工作原理如下:

  • when 变量 (day) 被评估一次
  • day 变量的值与每个“分支”的值进行比较
  • 每个分支都以一个值开始,后跟一个箭头 (->) 和一个结果
  • 如果匹配,则执行相关联的代码块
  • else 用于指定在没有匹配项时要运行的某些代码
  • 在上面的例子中,day 的值为 4,这意味着将打印 "Thursday"