val 常量
val x = 2
when (x) {1 -> println("x is 1")2 -> println("x is 2")else -> println("x is neither 1 nor 2")
}
在这个示例中,when
表达式会根据x
的值执行相应的代码块。如果x
的值是1,那么会执行第一个代码块;如果x
的值是2,那么会执行第二个代码块;否则会执行else
分支的代码块。
Enum 枚举类型
enum class Color {RED, GREEN, BLUE
}fun getColorString(color: Color): String {return when (color) {Color.RED -> "红色"Color.GREEN -> "绿色"Color.BLUE -> "蓝色"}
}fun main() {println(getColorString(Color.RED)) // 输出:"红色"
}
在这个例子中,我们定义了一个名为Color
的枚举类型,然后在getColorString
函数中使用when
表达式根据枚举类型的值来返回对应的字符串。当调用getColorString
函数时,它会根据传入的枚举值返回相应的字符串。