iOS/Swift

흐름 제어 (반복문)

밤새는 탐험가89 2024. 1. 12. 14:06

 

for - in 구문

반복적인 데이터나 시퀀스를 다룰 때 사용

 

 

for - in 반복 구문의 활용

 // 숫자
 for num in 0...5 {
     print(num)
 }
 // 1
 // 2
 // 3
 // 4
 // 5
 
 
 // 문자열
 for letter in "Apple" {
    print(letter)
}

// A
// p
// p
// l
// e


// 배열
for word in ["Apple", "Banana", "Melon"] {
    print(word)
}

// Apple
// Banana
// Melon

 

★ num, letter, word 를 임시 상수라고 하는데, 해당하는 값이 없다면

와일드 카드 식별자 ( _ )를 사용

 

 

 

기본 데이터 타입의 for - in 반복 구문 사용

let myAddress: [String : String] = ["도": "가나시", "시군구": "다시 라군 마구", 
"동읍면": "바동 사읍 아면"]

for (key, value) in myAddress {
    print("\(key) : \(value)")
}

// 순서는 매번 다르게 나옴
// 도 : 가나시
// 시군구 : 다시 라군 마구
// 동읍면 : 바동 사읍 아면

 

★ for - in 구문은 상당히 편하지만,

map, filter, flatMap 등을 더 많이 사용

 

 

 

while

특정 조건 (Bool 타입)이 성립하는 한 블록 내부의 코드를 반복해서 실행 

var fruitList: [String] = ["Apple", "Banana", "Kiwi"]

while fruitList.isEmpty == false {
    print("check fruit \(fruitList.removeFirst())")
}

// check fruit Apple
// check fruit Banana
// check fruit Kiwi

 

 

 

repeat - while 구문

repeat 블록의 코드를 최초 1회 실행 후

while 다음의 조건이 성립되면

블록 내부의 코드를 반복 실행

 

 

repeat - while 반복 구문의 사용

var fruitList: [String] = ["Apple", "Banana", "Kiwi"]

repeat {
    print("Check fruit \(fruitList.removeFirst())")
    
} while fruitList.isEmpty == true


// 최초로 repeat 구문을 1회 실행
// Check fruit Apple

// 그리고 while 구문의 Bool 타입의 조건을 확인
// 배열이 빈게 아니기 때문에 그대로 while 구문 탈출

'iOS > Swift' 카테고리의 다른 글

함수 2편 (매개변수, 데이터 타입)  (0) 2024.01.14
함수 1편 (함수 정의 및 호출)  (0) 2024.01.14
흐름 제어 (switch 구문)  (0) 2024.01.11
흐름 제어 (if 구문)  (0) 2024.01.10
연산자  (1) 2024.01.09