본문 바로가기

언어/Kotlin

[ 코틀린 / Kotlin ] 따라하면서 조건문에 대해서 이해하자.

반응형

 

 

Kotlin에서 조건문은 프로그램의 흐름을 제어하기 위해 사용됩니다. Kotlin은 다양한 조건문을 지원하며, 그 중에서 대표적인 것은 if, when 그리고 if-else 조건문입니다. 각각의 조건문은 특정 조건을 평가하고, 그에 따라 다른 코드 블록을 실행하는 데 사용됩니다. 아래에서는 Kotlin의 조건문을 예제를 통해 자세히 설명하겠습니다.

1. if 조건문

if 조건문은 주어진 조건이 참(true)일 때만 특정 블록의 코드를 실행합니다.

기본 형식:

if (condition) {
    // 조건이 참일 때 실행될 코드
}

예제:

fun main() {
    val number = 10

    if (number > 0) {
        println("$number is positive")
    }
}
  • 위 예제에서 number가 0보다 큰 경우에만 "10 is positive"가 출력됩니다.

2. if-else 조건문

if-else 조건문은 if 조건이 참일 때와 거짓일 때 서로 다른 코드를 실행할 수 있게 합니다.

기본 형식:

if (condition) {
    // 조건이 참일 때 실행될 코드
} else {
    // 조건이 거짓일 때 실행될 코드
}

예제:

fun main() {
    val number = -5

    if (number > 0) {
        println("$number is positive")
    } else {
        println("$number is not positive")
    }
}
  • 위 예제에서 number가 0보다 크면 "positive"가 출력되고, 그렇지 않으면 "not positive"가 출력됩니다.

3. if-else if-else 조건문

여러 개의 조건을 순차적으로 검사하고, 처음으로 참인 조건의 블록만을 실행합니다.

기본 형식:

if (condition1) {
    // 조건1이 참일 때 실행될 코드
} else if (condition2) {
    // 조건2가 참일 때 실행될 코드
} else {
    // 모든 조건이 거짓일 때 실행될 코드
}

예제:

fun main() {
    val number = 0

    if (number > 0) {
        println("$number is positive")
    } else if (number < 0) {
        println("$number is negative")
    } else {
        println("$number is zero")
    }
}
  • 위 예제에서 number가 양수, 음수, 또는 0인지에 따라 각각 다른 메시지가 출력됩니다.

4. if 조건문의 표현식 사용

Kotlin의 if는 표현식(expression)으로 사용될 수 있어, 값을 반환하고 변수에 할당할 수 있습니다. 이로 인해 코드가 더 간결하고 직관적으로 변할 수 있습니다.

기본 형식:

val result = if (condition) {
    // 조건이 참일 때 반환할 값
} else {
    // 조건이 거짓일 때 반환할 값
}

예제:

fun main() {
    val a = 10
    val b = 20

    // 큰 값을 반환하는 if 표현식
    val max = if (a > b) a else b
    println("The maximum value is $max")  // 출력: The maximum value is 20
}
  • 위 예제에서 if 표현식은 두 값 중 더 큰 값을 반환하고, 변수 max에 할당됩니다.

5. when 조건문

when은 Kotlin에서 switch 문을 대체하는 강력한 조건문입니다. 여러 조건을 검사하고, 해당 조건이 참일 때 특정 블록을 실행합니다.

기본 형식:

when (value) {
    case1 -> // case1에 해당할 때 실행될 코드
    case2 -> // case2에 해당할 때 실행될 코드
    else -> // 어떤 case에도 해당하지 않을 때 실행될 코드
}

예제:

fun main() {
    val dayOfWeek = 3

    val dayName = when (dayOfWeek) {
        1 -> "Sunday"
        2 -> "Monday"
        3 -> "Tuesday"
        4 -> "Wednesday"
        5 -> "Thursday"
        6 -> "Friday"
        7 -> "Saturday"
        else -> "Invalid day"
    }

    println("The day of the week is $dayName")  // 출력: The day of the week is Tuesday
}
  • 위 예제에서 when은 요일 번호에 따라 요일 이름을 반환합니다.

여러 조건 처리:

when은 단일 조건뿐만 아니라 여러 조건을 동시에 처리할 수 있습니다.

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: $grade")  // 출력: Grade: B
}
  • 위 예제에서 when은 점수 범위에 따라 학점을 결정합니다.

6. when 표현식으로 사용

when도 표현식으로 사용할 수 있어, 값을 반환하고 변수에 할당할 수 있습니다.

fun main() {
    val number = 10

    val parity = when {
        number % 2 == 0 -> "even"
        else -> "odd"
    }

    println("The number is $parity")  // 출력: The number is even
}
  • 위 예제에서 when 표현식은 숫자가 짝수인지 홀수인지 결정하여 그 결과를 반환합니다.

7. 요약

Kotlin에서는 if, if-else, if-else if-else, when과 같은 다양한 조건문을 지원합니다. if 조건문은 기본적인 조건 평가를 수행하며, when 조건문은 여러 조건을 간단하고 직관적으로 처리할 수 있게 합니다. 또한, Kotlin의 조건문은 표현식으로 사용될 수 있어, 더 간결하고 명확한 코드를 작성하는 데 도움이 됩니다.

반응형