fun main(args: Array<String>) {
val age = 30
if (age < 40) {
println("You are ${age} years old.")
}
}
when {
score > 90 -> println("A")
score > 80 -> println("B")
else -> println("C")
}
비교할 대상 파라미터를 전달하고, 해당 값을 비교할 수도 있다.
fun main(args: Array<String>) {
checkWithWhen(15)
checkWithWhen('B')
checkWithWhen("Hello")
}
fun checkWithWhen(someValue: Any) {
when(someValue) {
in 10..20 -> println("C")
in 'A'..'B' -> println("You got very good score.")
else -> println("I don't know.")
}
}
들어온 값 자체를 검사하는 경우에는 체크하고자 하는 값을 그대로 when 하위 검사식에 쓸 수 있다.
is
를 사용할 수 있다.fun checkTypeWithWhen(someValue: Any) {
when(someValue) {
is String -> println("String. ${someValue}")
is Int -> println("Int. ${someValue}")
else -> println("I don't know.")
}
}
// 결과
// String. A
// Int. 10