Kotlin, 반복문과 흐름제어

Yebali·2021년 8월 11일
0

약간의_Kotlin

목록 보기
4/19

반복문

조건형 반복문

while문과 do-while이 있다.
while()안의 조건이 참이면 해당 반복문이 실행된다.

fun main() {
    var a = 0
    
    while(a < 5) {
        println(a++)
    }
}

do-while문은 조건과 상관 없이 일단 반복문이 한 번 실행된 후 조건을 확인한다.

fun main() {
    var a = 0
    
    do {
        print(a++)
    } while(a < 5)
}

범위형 반복문

대표적으로 for문이 있다.

범위가 증가

fun main() {
	//0~9까지 1씩 증가
    for (i in 0..9) {
        println(i)
    }
}

증가하는 숫자를 달리 하고 싶을 때는 for문 안에 'step'을 사용하면 된다.

fun main() {
	//0~9까지 3씩 증가
    for (i in 0..9 step 3) {
        println(i)
    }
}

범위가 감소

fun main() {
	// 9~0까지 감소
    for (i in 9 downTo 0) {
        println(i)
    }
}

물론 'step'도 사용이 가능하다

for (i in 9 downTo 0 step 3)

약간 응용하면 문자들도 쓸 수 있다.

fun main() {
	// a~e 까지 
    for (i in 'a'..'e') {
        println(i)
    }
}

흐름제어

일반적으로 반복문에서 break와 continue를 사용하는 것은 다른 언어와 같다.

한가지 특이한 기능을 소개하면
만약 2중 반복문에서 특정 조건에 도달했을 때 2중 반복문을 한번에 빠져나오려면 어떻게 해야할까?
Kotlin에서는 다음과 같이 하면 된다.

fun main() {

    loop@for (i in 0..9) {
        for (j in 0..9){
            if (i == 1 && j == 2) 
                break@loop
                
            println("i : $i, j : $j")
        }
    }
}

'@+레이블'을 통해 해당 반복문을 벗어날 수 있게 해준다.
continue도 동일하게 동작된다.
위 코드에서는 'loop'라는 이름으로 레이블을 달아주었다.

profile
머리에 다 안들어가서 글로 적는 중

0개의 댓글