모바일/SwiftUI ios 공부

스위프트 반복문 for-in구문, while 반복문, repeat 반복문, continue 구문, if문 / Xcode SwiftUI Playground 공부

yy_dd2 2021. 9. 8. 18:15
반응형

스위프트 반복문 for-in구문, while 반복문, repeat 반복문, continue 구문, if문 / Xcode SwiftUI Playground  공부

 

프로그램의 흐름을 통제하는 제어흐름(control flow)

반복제어(Looping control) 와 조건부 제어 흐름(conditional flow control)

 

for-in구문

for 상수명 in 컬렉션 또는 범위 {
    //실행될 코드
}
// 1. for-in

// index 상수에서 1...5까지의 숫자 범위로 반복
let index : Int?
for index in 1...5{
    print("Value of index is \(index)")
}

// for-in 구문에 상수명을 꼭 쓰지 않아도 된다
// 참조체가 for 반복문 안에서 필요하지 않는다면 밑줄 문자로 대처 가능
var count = 0
for _ in 1...5 {
    // 현재 값에 대한 참조체가 필요 없음
    count += 1
    print(count)
}

 

while 반복문

while 조건문{
    // 실행될 구문
}
// 2. while 반복문

// myCount 의 변수가 5보다 작으면 계속 반복하고
// 5보다 크면 실행 코드를 건너뛰고 종료
var myCount = 0

while myCount < 5 {
    myCount += 1
}

 

repeat 반복문

// 스위프트 1.x버전 do..while 반복문의 대체라고한다
// repeat...while반복문은 반복문 안의 코드는 언제나 한 번은 실행되야 하는 상황을 위해 사용된다

repeat {
    // 여기에 스위프트 구문
} while 조건식
// 3. repeat ... while 반복문

// i라는 변수의 값이 0이 될때까지 반복
var i = 10
repeat {
    i -= 1
} while (i > 0)

 

빠져나가기 break

// 4. break 반복문 빠져나가기
var j = 10

for _ in 0..<30 {
    j += j
    
    if j > 30 {
        break
    }
    
    print("j = \(j)")
}

 

continue 구문

// 5. continue 구문
var r = 1

while r < 20{
    r += 1
    if (r % 2) != 0 {   // r의 값을 2로 나눈 나머지가 있다면
        continue        // while문의 시작지점으로 돌아간다
    }
    print("r = \(r)")   // r의 나머지가 없다면 종료한다
}

 

 

 

if문

// 아는거라 패스해도되는데 처음꺼만 걍 써둠
if 조건식 {
    
}
// 6. if 문 사용하기
let z = 10
if z > 9 {
    // z가 9보다 크니 실행됨
    print("z is greater than 9!")
}

// if..else.. 구문 아는거니 패스
// if..else if...구문도 아는거니 패스

 

guard문

스위프트 2에 도입된 기능

- guard 불리언(블린/불린/블리언) 표현식이 false 일 때 수행될 else 절 반드시 포함

- else의 구문은 현재 코드 흐름을 빠져나가는 구문 return, break, continue, throw 구문 포함해야함

- 자신을 반환하지 않는 다른 함수나 메서드를 호출 할 수 있음

guard <조건문(불리언 표현식) else {
    // 조건문이 false일 때 실행될 코드
    <종료 구문>
}


// 조건문이 true 일 때 실행될 코드
// guard 구문 구현 예시
func multiplyByTen(value : Int?) {
	// guard <조건문(불리언 표현식) else {
    guard let number = value, number < 10  else {   
        // 조건문이 false일 때 실행될 코드
        print("Number is too high")
        // <종료 구문>
        return                                    
    }
    // 조건문이 true 일 때 실행될 코드
    let result = number * 10
    print(result)
}

 

 

핵심만 골라 배우는 SwiftUI 기반의 iOS 프로그래밍, 닐 스미스 지음, 황반석 옮김, 제이펍 출판

반응형