본문 바로가기
Java/Android App - Kotlin

Kotlin 문법 - 조건문 (if/else, when)

by 키모형 2023. 1. 1.
반응형

다른 프로그램 언어와 마찮가지로 Kotlin 에서도 if/else, if/else if 를 사용할 수 있습니다

아래와 같은 문법으로 사용됩니다.

 

if / else  (조건에 해당 되거나 아니거나)

fun main() {
    val trafficLightColor = "Red"

    if (trafficLightColor == "Red") {
        println("Stop")
    } else {
        println("Go")
    }
}

프로그램을 실행한 후 출력을 확인합니다.

Stop

 

if / else if / else (조건1 , 조건2, 나머지)

fun main() {
    val trafficLightColor = "Yellow"

    if (trafficLightColor == "Red") {
        println("Stop")
    } else if (trafficLightColor == "Yellow") {
        println("Slow")
    } else {
        println("Go")
    }
}

 

else if 구문 조건에 의해 "Slow" 가 출력됩니다.

 

다중 else if 를 사용할 수 있습니다

fun main() {
    val trafficLightColor = "Black"

    if (trafficLightColor == "Red") {
        println("Stop")
    } else if (trafficLightColor == "Yellow") {
        println("Slow")
    } else if (trafficLightColor == "Green") {
        println("Go")
    } else {
        println("Invalid traffic-light color")
    }

}

 

When 

다중 else if 문을 구성해야 할 경우 Kotlin 에서 제공하는 When 구문을 이용하면 간편하게 표현이 가능합니다.

fun main() {
    val trafficLightColor = "Black"

    when (trafficLightColor) {
        "Red" -> println("Stop")
        "Yellow" -> println("Slow")
        "Green" -> println("Go")
        else -> println("Invalid traffic-light color")
    }
}

x의 값이 소수인지 확인 하는 구문 (2, 3, 5, 7 의 경우 소수에 해당한다는 분기)

fun main() {
    val x = 3

    when (x) {
        2 -> println("x is a prime number between 1 and 10.")
        3 -> println("x is a prime number between 1 and 10.")
        5 -> println("x is a prime number between 1 and 10.")
        7 -> println("x is a prime number between 1 and 10.")
        else -> println("x isn't a prime number between 1 and 10.")
    }
}

위 구분에서 2, 3, 5,7 조건에 대한 수행구문이 동일 하므로 다음과 같이 묶어서 처리 할 수 있다

fun main() {
    val x = 3

    when (x) {
        2, 3, 5, 7 -> println("x is a prime number between 1 and 10.")
        else -> println("x isn't a prime number between 1 and 10.")
    }
}

 

in,  is 키워드 사용법

fun main() {
    val x = 4

    when (x) {
        2, 3, 5, 7 -> println("x is a prime number between 1 and 10.")
        in 1..10 -> println("x is between 1 and 10, but not a prime number.")
        is Int -> println("x isn't a number between 1 and 10.")
        else -> println("x isn't a prime number between 1 and 10.")
    }
}

in 1..10 : x의 값이 1~10 사이의 값인지 체크

is Int : x의 자료유형(type) 이 Int 유형인지 체크

 

반응형

'Java > Android App - Kotlin' 카테고리의 다른 글

Kotlin - 클래스 (생성자)  (0) 2023.01.04
Kotlin - 클래스 (속성 정의)  (0) 2023.01.03
Kotlin - 클래스 (Class)  (0) 2023.01.03
Kotlin - Null 허용 변수  (0) 2023.01.03
Kotlin 문법 - 변수 선언 (Variable declaration)  (0) 2023.01.01