Menu
Coddy logo textTech

범위를 활용한 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 키워드는 값이 지정된 범위 내에 존재하는지 확인합니다. 여기서 8580..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
}

범위는 연속적인 숫자 조건을 다룰 때 코드를 더 읽기 쉽게 만들어 줍니다. 이는 성적 시스템, 연령 범주 및 이와 유사한 상황에서 흔히 사용됩니다.

challenge icon

챌린지

쉬움

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 {
    // 여기에 코드를 작성하세요
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: Kotlin 플레이그라운드