When 표현식
Coddy Kotlin 여정의 기초 섹션에 포함된 레슨. 93개 중 32번째.
확인해야 할 구체적인 값이 여러 개라면 긴 else if 문 체인은 읽기 어려워질 수 있습니다. Kotlin은 하나의 값을 여러 가능성과 대조할 때 더 깔끔한 대안으로 when 표현식을 제공합니다.
fun main() {
val day = 3
val dayName = when (day) {
1 -> "Monday"
2 -> "Tuesday"
3 -> "Wednesday"
4 -> "Thursday"
5 -> "Friday"
else -> "Weekend"
}
println(dayName) // 출력: Wednesday
}when 표현식은 값을 받아 각 분기와 비교합니다. 일치하는 항목이 발견되면 해당 결과가 반환됩니다. else 분기는 나열된 사례와 일치하지 않는 모든 값을 처리합니다.
쉼표로 구분하여 하나의 분기에서 여러 값을 일치시킬 수도 있습니다:
fun main() {
val day = 6
val type = when (day) {
1, 2, 3, 4, 5 -> "Weekday"
6, 7 -> "Weekend"
else -> "Invalid"
}
println(type) // 출력: Weekend
}값을 생성하는 when은 완전해야 합니다. 가능한 모든 입력에 결과가 있어야 합니다. 이러한 정수 예제에는 else가 필요하지만, true와 false 분기를 모두 포함하는 불리언 when에는 필요하지 않습니다.
챌린지
쉬움다음 변수가 주어집니다:
val month = 4when 표현식을 사용하여 월 숫자를 기준으로 계절을 결정하고, 그 결과를 season이라는 변수에 저장하세요.
조건:
- 월
12,1,2는"Winter"를 반환해야 합니다. - 월
3,4,5는"Spring"을 반환해야 합니다. - 월
6,7,8은"Summer"를 반환해야 합니다. - 월
9,10,11은"Fall"을 반환해야 합니다. - 그 외의 값은
"Invalid month"를 반환해야 합니다.
동일한 계절에 해당하는 월을 그룹화하려면 when 분기에서 쉼표로 구분된 값을 사용하세요.
season의 값을 출력하세요.
직접 해보기
fun main() {
val month = 4
// TODO: 아래에 코드를 작성하세요
// when 표현식을 사용하여 월을 기준으로 계절을 결정하세요
// 결과를 'season'이라는 변수에 저장하세요
// 결과를 출력하세요
println(season)
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
직접 연습해 보세요: Kotlin 플레이그라운드