guard구문: if구문과 마찬가지로 주어진 표현식의 결과가 참인지 거짓인지에 따라 구문의 실행 여부를 결정짓는 방식의 조건문.
if구문과의 차이점: guard구문에는 else블록이 필수이지만, 표현식의 결과가 참일 때 실행되는 블록이 없다.
guard <조건식 또는 표현식> else {
<조건식 또는 표현식의 결과가 false일 때 실행될 코드>
주로 후속 코드들이 실행되기 전에 특정 조건을 만족하는지 확인하는 용도로 사용.
특정 조건을 만족하지 않은 채로 후속 코드를 실행하면 심각한 오류가 발생할 경우에, 전체구문을 "조기종료" 하기위한 목적으로 사용.
따라서 guard구문의 else 블록에는 이후의 코드 진행을 막아주는 구문이 반드시 포함되어야 한다.
return 또는 break등.
func divide(base:Int) {
guard base !=0 else {
print("연산할 수 없습니다.")
return
}
let result = 100 / base
print(result)
}
조건을 체크하여 실행흐름을 종료시킬 때 가급적 guard.
조건을 체크하되 다른 실행 흐름을 이어나가고 싶은 경우에만 if ~ else구문
출처: 꼼꼼한 재은씨의 swift 문법편 p208-
'iOS > iOS Swift 문법' 카테고리의 다른 글
iOS swift switch구문 (0) | 2022.06.03 |
---|---|
iOS swift #available 구문 (0) | 2022.06.03 |
iOS swift A ?? B (0) | 2022.05.28 |
iOS swift 주석 표시 (0) | 2022.05.27 |
iOS swift Xcode 에서 API문서 보는 법 단축키 (0) | 2022.05.26 |