when 표현식
- when 표현식은 if 표현식과 유사하지만, 여러 조건을 더 간결하게 처리할 수 있습니다.
- 조건을 직접 작성하는 when 표현식과 변수의 값을 비교하는 when 표현식 두 가지 방법이 있습니다.
- when 표현식을 사용하면 코드의 가독성을 높이고, 복잡한 조건을 쉽게 처리할 수 있습니다.
1. 조건식에서 when 사용하기
특정 숫자의 값을 검사하고 각 경우에 맞는 출력을 하는 예시
기존 if 표현식
fun checkNumber(x: Int) {
if (x > 0) {
println("A positive number")
} else if (x < 0) {
println("A negative number")
} else {
println("The zero number")
}
}
when 표현식으로 변환
fun checkNumber(x: Int) {
when {
x > 0 -> println("A positive number")
x < 0 -> println("A negative number")
else -> println("The zero number")
}
}
2. 변수의 값을 비교하는 when 사용하기
특정 변수의 값에 따라 다양한 값을 반환
기존 if 표현식
fun checkNumber(x: Int): Int {
return if (x == 0) {
x + 5
} else if (x == 10) {
x - 5
} else {
x / 10
}
}
when 표현식으로 변환
fun checkNumber(x: Int): Int {
return when (x) {
0 -> x + 5
10 -> x - 5
else -> x / 10
}
}
그 외의 값에 대해서는 error 함수를 호출하여 에러 메시지를 포함한 예외를 발생
fun checkNumber(x: Int): Int {
return when (x) {
0 -> x + 5
10 -> x - 5
else -> error("Unexpected number: $x")
}
}
'코틀린' 카테고리의 다른 글
[코틀린 Kotlin] StringBuilder - 문자열 수정/결합 시 기존 버퍼를 수정하는 클래스 (1) | 2024.09.07 |
---|---|
[코틀린 Kotlin] lines - 줄 단위로 split 하여 리스트로 반환 (0) | 2024.09.07 |
[코틀린 Kotlin] Multiline Strings(여러 줄의 문자열)/trimIndent(들여쓰기 제거)/trimMargin(여백 제거) (0) | 2024.09.06 |
[코틀린 Kotlin] uppercase - 대문자로 변경 (+지정 국가 언어로 변환) (1) | 2024.09.06 |
[코틀린 Kotlin] isLetter - 문자가 알파벳인지 여부 확인 (0) | 2024.09.06 |