스파르타 코딩 클럽 - iOS 스타터 6기/본 캠프
9. 스파르타 코딩 클럽 - guard 조건문
seongpil Heo
2025. 3. 11. 14:19
❓ guard 조건문
• guard는 조건이 false일 때 코드를 더이상 실행시키지 않고 코드블록을 빠져나가는 조건문입니다
• 조건이 true일 경우 코드를 계속 진행하고, false일 경우 else 코드 블록에서 탈출해야 합니다.
• else 블록은 필수입니다
guard 조건 else {
// 조건이 false일 때 실행되는 코드블록
// return, break, continue, throw등 코드블록을 종료하는 구문이 필요
return
}
// 만약 위에서 조건이 false라면 아래 코드는 실행되지 않습니다.
// early exit (빠른 탈출)이라고도 불립니다.
// 조건이 true이면 아래의 코드를 계속 진행합니다.
// 반복문에서 사용하는 guard
for i in 0...10 {
print(i)
guard i < 5 else { break }
}
/* 출력값
0
1
2
3
4
5
*/
// 한국말로 풀어보기
for i in 0...10 { // 0부터 10까지 반복합니다. 현재값은 i에 넣습니다.
print(i)
guard i < 5 else { break } // i가 5보다 작다면 true이기 때문에 계속 진행합니다.
// i가 5보다 크다면 false이기 때문에 else 코드블록을 실행합니다.
// else 코드블록에서는 for 반복문을 탈출하는 break
}
📝 if vs guard
• if 조건문은 true일 때 코드블록을 실행하고, false일 때 다른처리를 할 수 있습니다.
• guard 조건문은 false일 때 즉시 탈출하는 방식입니다.
• if 조건문은 코드블록을 명시적으로 작성해야 하지만 guard는 true일 때 코드블록이 없고 계속 진행합니다.
• guard는 아래의 더이상 코드를 진행하지 못하게 하는 경비원 같은 존재
• if는 코드블록에 들어갈 수 있는 티켓