Swift 05 : 반복문

for(for-in)문

  • 컬렉션 타입(배열, 딕셔너리 등)의 모든 요소를 순회하는데 사용
let numbers = [1, 2, 3, 4, 5]

for number in numbers {
    print(number)
}

// 1
// 2
// 3
// 4
// 5 

while문

  • 반복문 진입 전에 조건을 검사하고 조건이 true인 경우에 코드 블록을 실행,
    false이면 반복문을 빠져나옴
    (반복문이 실행되기 전 조건이 false면 while문 내부는 단 한번도 실행 안됨)
var i = 0

while i < 5 {
    print(i)
    i += 1
}

// 0
// 1
// 2
// 3
// 4

repeat-while문

  • 조건을 평가하기 전에 코드 블록을 최소한 한 번은 실행하는 while문
    (즉 while문과 다른 점은 false일지라도 처음 한번은 실행되고 조건이 평가된다.)
var i = 5

repeat {
    print(i)
    i += 1
} while i < 5

// 5

forEach문

  • 배열과 같은 컬렉션을 순회할 때 사용하는 반복문
let fruits = ["Apple", "Banana", "Orange"]

fruits.forEach { fruit in
    print(fruit)
}

// Apple
// Banana
// Orange

stride문

  • 범위의 값을 특정 간격으로 건너뛰면서 반복할 때 사용
for i in stride(from: 0, to: 10, by: 2) {
    print(i)
}

// 0
// 2
// 4 
// 6 
// 8

또한 반복문 안에서 사용할 수 있는 제어문이 있다
제어문은 조건에 따라 특정 부분을 건너 뛰거나 반복문을 종료할 수 있게 한다.

continue

  • 반복문 내에서 특정 조건을 만족할 때, 해당 반복을 건너뛰고 다음 반복으로 이동
for number in 1...10 {
    if number % 2 == 0 {
        continue // 짝수일 때는 반복을 건너뛰고 다음 반복으로 진행
    }
    print(number)
}

// 1
// 3
// 5 
// 7 
// 9

break

  • 반복문 내에서 특정 조건을 만족할 때, 해당 반복문을 강제로 종료
for number in 1...10 {
    print(number)
    if number == 5 {
        break // 5를 만나면 반복문 종료
    }
}

// 1
// 2
// 3 
// 4 
// 5