본문 바로가기

iOS 관련 공부

제어전송문

제어전송문

  • 반복문에서 쓰이는 제어전송문(Control Transfer Statement)

 

1) continue

for num in 1...20 {
    if num % 2 == 0 {   // num 2의 배수
        continue
    }
    print(num)
}

print 값 1,3,5,7,9,11,13,15,17,19 

 

continue 란 내부 if 문에 부합하는(true) 조건일 때 다음 주기로 넘어가고

false일 때는 내부 실행되지 않고 print 문 실행 됨.

 

 

 

2) break

for num in 1...20 {
    if num % 2 == 0 {
        break
    }
    print(num)
}

print 값 1

break는 반복문을 종료시킴.

1일 때 내부 if문에 부합하지 않으므로 1 출력 후

2일 때 내부 if문에 부합하여 break 즉 종료 되므로 출력되는 값은 1밖에 없다.

 

 

주의할 점 - 중첩 사용 시 적용 범위

 

가장 인접한 범위의 반복문에 영향을 미친다.

 

 

 

3) Labeled Statements

  • 레이블이 매겨진 문장(Labeled Statements)과 continue, break 의 사용

반복문을 중첩적으로 사용할때, 각 반복문에 이름을 붙여서, 가장 인접한 범위 이외의 반복문도 제어가능

OUTER: for i in 0...3 {     // 관습적으로 대문자 사용
    print("OUTER \(i)")
    INNER: for j in 0...3 {
        if i > 1 {
            print("  j :", j)
            continue OUTER
            //break OUTER
        }
        print("  INNER \(j)")
    }
    
}

 

 

 

 

 

+ 추가

 

Swift에서 사용하는 제어전송 명령문(흐름 제어)

키워드 쓰이는 경우 설명
break switch / 반복문 1) switch문:
케이스에서 실행하는 문장이 없을 때, break 반드시 입력해야 함
2) 반복문:
가장 인접한 반복문의 모든 싸이클을 아예 중지(break)하고 반복문 다음의 문장으로
fallthrough switch switch문에서 매칭된 값에 대한 고려없이, 무조건 다음 문장도 실행하려할 때 입력
continue 반복문 반복문에서 다음 반복문의 싸이클로 넘어가서 계속(continue) 실행함
return 함수 1) 리턴타입이 있는 함수:
리턴 키워드 다음의 표현식을 평가한 다음, 그 결과를 리턴하면서(함수 실행을 중지하고) 함수를 벗어남
2) 리턴타입이 없는 함수:
함수의 실행을 중지하고 함수를 벗어남
throw 함수 에러가 발생가능하도록 정의된 함수에서, throw 키워드 다음에 정의된 에러의 타입을 리턴하면서(함수 실행을 중지하고) 함수를 벗어남

'iOS 관련 공부' 카테고리의 다른 글

함수의 응용, 함수 사용시 주의점  (0) 2024.12.26
함수의 형태  (0) 2024.12.24
튜플  (0) 2024.12.12
연산의 우선순위  (0) 2024.12.11
특수문자 이름/명칭  (0) 2024.12.10