코틀린 반복문

코틀린 반복문 완벽 정리

코틀린에서는 반복문을 이용해 같은 동작을 여러 번 수행할 수 있다.
대표적인 반복문으로는 for, while, do-while이 있다.


for 문 기본 구조

for 문은 반복 가능한 객체(컬렉션, 범위, 배열 등)를 순회할 때 사용한다.

for (item in 컬렉션) {
// 실행할 코드
}

예시

val numbers = listOf(1, 2, 3, 4, 5)

for (num in numbers) {
println(num)
}


범위를 이용한 for 문

코틀린에서는 .. 연산자를 사용해 범위(Range) 를 쉽게 지정할 수 있다.

for (i in 1..5) {
println(i)
}

역순 반복

for (i in 5 downTo 1) {
println(i)
}

간격 지정

for (i in 1..10 step 2) {
println(i)
}

범위 제외

for (i in 1 until 5) { // 1, 2, 3, 4만 포함
println(i)
}

배열 또는 리스트 반복

val fruits = arrayOf("사과", "배", "포도")

for (fruit in fruits) {
println(fruit)
}


인덱스와 함께 반복

withIndex()를 사용하면 인덱스와 값을 동시에 가져올 수 있다.

val fruits = listOf("사과", "배", "포도")

for ((index, fruit) in fruits.withIndex()) {
println(${index}번째: $fruit“)
}


while 문

while 문은 조건이 참일 동안 코드를 반복 실행한다.

while (조건식) {
// 실행할 코드
}

예시

var count = 0

while (count < 5) {
println(“카운트: $count“)
count++
}


do-while 문

do-while 문은 최소 한 번은 실행되고, 이후 조건을 검사한다.

do {
// 실행할 코드
} while (조건식)

예시

var num = 0

do {
println(“num: $num“)
num++
} while (num < 3)


break와 continue

break

break는 반복문을 즉시 종료한다.

for (i in 1..10) {
if (i == 5) break
println(i)
}

continue

continue는 해당 반복을 건너뛰고 다음 반복으로 넘어간다.

for (i in 1..5) {
if (i == 3) continue
println(i)
}

중첩 반복문에서 라벨 사용

라벨(Label)을 사용하면 특정 반복문을 제어할 수 있다.

outer@ for (i in 1..3) {
for (j in 1..3) {
if (i == 2 && j == 2) break@outer
println("i=$i, j=$j")
}
}

위 코드에서 break@outer는 바깥쪽 for 문을 종료한다.


반복문 요약 비교표

문법 설명 최소 실행 횟수
for 범위 또는 컬렉션 순회 0회
while 조건이 참일 때 반복 0회
do-while 실행 후 조건 검사 1회 이상

  • for 문은 인덱스 반복보다는 컬렉션 순회에 더 적합하다.

  • 반복문 내부에서 불필요한 연산은 피하는 것이 좋다.

  • break@labelcontinue@label을 활용하면 가독성이 높아진다.

  • 성능이 중요한 경우 repeat() 함수를 사용할 수도 있다.

repeat() 예시

repeat(3) {
println("반복 횟수: $it")
}

게시됨

카테고리

작성자

태그:

댓글

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다