var age = 30;
when(age) {
10 -> println("10입니다")
20 -> {
println("20입니다")
println("20대는 청춘입니다")
}
in 30..40 -> println("30대입니다")
in 50 downTo 41 -> println("4호선입니다")
51,52,53, in 54..60 -> println("60대입니다")
!in 10..100 -> println("자라나는 새싹입니다")
else -> {
println("맞는 조건이 없습니다")
}
}
// 30대입니다
조건 → 실행문
조건 → { 실행문1, 실행문2 ... }
in 범위시작..범위끝 → 실행문
: in
으로 시작하고 범위 사이에 ..
을 붙이면 범위지정하여 실행한다in 범위시작 downTo 범위끝 → 실행문
: 큰 값부터 작은 값까지로 거꾸로 범위를 지정한다.조건1,조건2-> 실행문
: ,
를 사용하여 조건을 여러 개로 묶을 수 있다.!in 시작..끝 -> 실행문
: 시작부터 끝까지의 이외의 값이면 실행한다.else → {실행문}
: switch의 default와 같다. 조건이 모두 맞지 않으면 실행var gogo : Any = "12.0"
when (gogo) {
is Int -> println("Int입니다")
!is Double -> println("Double이 아입니다")
is String -> println("String입니다")
else -> println("어떤 것도 아닙니다")
}
// String입니다
is Type
: Type에 해당되면 실행
!is Type
: Type에 해당되지 않으면 실행
Any
: Kotlin에서 Any는 Java에서 Object와 같은 최상위 클래스이다. 하지만 Any는 Object의 super class이다.