ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Kotlin] when문을 사용하여 다양하게 처리하기
    legacy/Kotlin 2023. 9. 21. 21:12

     

    코틀린에서 when절은 다른 언어에서 제공하는 switch-case문과 동일합니다.(코틀린도 제공) is 키워드와 in 키워드를 통해서 when문을 사용하는 코드를 알아봅시다.

     

    기본적인 when문

    코틀린도 다른 언어와 마찬가지로 switch-case와 동일한 기능인 when문을 제공합니다.

    -> 기준으로 왼쪽은 a에 해당하는 값이고 오른쪽은 왼쪽 값이 true인 경우 실행할 코드입니다.

    fun main() {
        var a: Int = 10
    
        when(a) {
            10 -> println("a = 10")
            else -> println("a != 10")
        }
    }

    in과 is를 사용하는 when문

    in 키워드의 경우 when문에서만 사용할 수 있는 것이 아닌 if-else문 등 다양하게 사용할 수 있습니다.

    is 키워드는 자료형을 검사하는 키워드입니다.

    fun main() {
        var a: Int = 10
    
        when(a) {
            in 10..100 -> println("10 <= a <= 100")
            !in 10..100 -> println("a는 10보다 작거나 100보다 크다")
            is Int -> println("a의 자료형은 Int형이다.")
            else -> println("아무 것도 해당하지 않는다.")
        }
    }

    인자 값을 받지 않는 when문

    인자값을 받지 않는 경우 when문내에서 다양하게 로직을 처리할 수 있습니다. 이는 마치 if-else문과 같습니다.

    fun main() {
        var a: Int = 10
        
        when {
            a is Int -> println("a는 Int타입이다")
            a !is Int -> println("a는 Int타입이 아니다")
            a in 10..100 -> println("10 <= a <= 100")
            a >= 101 -> println("a는 100보다 크다.")
            else -> println("아무것도 해당되지 않는다")
        }
    }

    결론

    when문은 다른 언어와 동일하게 조건문을 통해 특정 로직을 실행하는 문법이다.

Designed by Tistory.