범위를 활용한 When
Coddy Kotlin 여정의 기초 섹션에 포함된 레슨. 93개 중 33번째.
때로는 값이 특정 값과 일치하는지 확인하기보다 값이 범위 내에 있는지 확인해야 합니다. when 표현식은 범위와 in 키워드를 함께 사용하여 이를 지원합니다.
fun main() {
val score = 85
val grade = when (score) {
in 90..100 -> "A"
in 80..89 -> "B"
in 70..79 -> "C"
in 60..69 -> "D"
else -> "F"
}
println(grade) // 출력: B
}in 키워드는 값이 지정된 범위 내에 존재하는지 확인합니다. 여기서 85는 80..89에 포함되므로 성적은 "B"입니다. 각 조건마다 score >= 80 && score <= 89를 작성하는 것보다 훨씬 깔끔합니다.
같은 when 표현식에서 범위를 특정 값과 함께 사용할 수도 있습니다:
fun main() {
val age = 17
val category = when (age) {
0 -> "Newborn"
in 1..12 -> "Child"
in 13..19 -> "Teenager"
else -> "Adult"
}
println(category) // 출력: Teenager
}범위는 연속적인 숫자 조건을 다룰 때 코드를 더 읽기 쉽게 만들어 줍니다. 이는 성적 시스템, 연령 범주 및 이와 유사한 상황에서 흔히 사용됩니다.
챌린지
쉬움age를 받아 해당 연령대에 따른 티켓 가격을 반환하는 getTicketPrice 함수를 작성하세요.
범위가 포함된 when 표현식을 사용하여 적절한 티켓 가격을 결정하세요.
조건:
- 나이
0~3세:0반환 (무료) - 나이
4~12세:10반환 (어린이 요금) - 나이
13~17세:15반환 (청소년 요금) - 나이
18~64세:25반환 (성인 요금) - 나이
65세 이상:12반환 (시니어 요금)
매개변수:
age(Int): 사람의 나이
반환값: 정수(Int) 형식의 티켓 가격
직접 해보기
fun getTicketPrice(age: Int): Int {
// 여기에 코드를 작성하세요
}
이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.
기초의 모든 레슨
직접 연습해 보세요: Kotlin 플레이그라운드