Kotlin/Kotlin 이론

Kotlin 이론 3 ) 코틀린 조건 및 루프 특징

kimc 2022. 8. 30. 18:31

```

코틀린 조건 및 루프 배우기

```

이번 글을 통해 배워갈 내용

  1. 코틀린 조건 및 루프 특징

if else

Kotlin에서는 삼항 연산자를 쓰지 않고

if else 자체를 표현식으로 활용합니다.

 

when

Kotlin에서는 when을 switch 문과 비슷하게 활용 가능합니다.

when을 표현식으로 사용할 때

컴파일러가 가능한 모든 경우를 증명하지 못하는 경우

else는 필수입니다.

그러므로 증명 가능한 경우에는 필수가 아닙니다.

 

for

범위 표현식에서 

..

downto

step

indices

withIndex

 

등을 통해

범위를 효과적으로 표현 가능합니다.

// if else
// 코틀린에서는 삼항연산자가 없고
// if else 자체가 표현식입니다
fun case01(lhs: Int, rhs: Int) {
    val max = if (lhs > rhs) lhs else rhs
    println(max)
}

// when
// 코틀린에서 switch 문과 비슷하게 쓰입니다
fun case02(x: Int) {
    when (x) {
        1 -> print("x == 1")
        2 -> print("x == 2")
        else -> {
            print("x 는 1도 2도 아님")
        }
    }
}

// when 이 expression (표현식)으로 사용될 때
// 컴파일러가 가능한 모든 경우를 증명하지 못하는 경우 else 는 필수입니다.
// 그런즉 증명가능한 경우에는 필수가 아닙니다.
enum class Bit {
    ONE, ZERO
}

fun case03(x: Bit) {
    when (x) {
        Bit.ZERO -> 0
        Bit.ONE -> 1
    }
}

// 범위 표현식으로 숫자를 범위를 반복할수 있습니다.
fun case04() {
    for (i in 1..5) {
        println(i)
    }
    for (i in 9 downTo 0 step 3) {
        println(i)
    }
    val arr = arrayOf(1, 2, 3)
    for (i in arr.indices) {
        println(arr[i])
    }
    for ((i, v) in arr.withIndex()) {
        println("$i $v")
    }
}

fun example03() {
    case01(5, 10)
    case02(3)
    case03(Bit.ONE)
    case04()
    println("example03")
}

fun main(args: Array<String>) {
    example03()
}
// https://kotlinlang.org/docs/control-flow.html

 

 

 

 


 

 

 

 

 

읽어주셔서 감사합니다

 

무엇인가 얻어가셨기를 바라며

 

오늘도 즐거운 코딩 하시길 바랍니다 ~ :)

 

참조 및 인용


 

https://kotlinlang.org/docs/control-flow.html

 

Conditions and loops | Kotlin

 

kotlinlang.org


 

 

728x90