Swift #11: 가드 절
Source: Dev.to
Guard statement
guard 문은 조건 뒤에 else와 보호 블록을 가집니다. 조건이 false이면 보호 블록이 실행되고, 보호 블록은 흐름을 반드시 중단해야 하므로 (return, break 또는 continue), 실패하거나 오류를 발생시켜야 합니다. 따라서 보호 블록이 실행된 후에는 그 뒤의 코드는 실행되지 않습니다.
let input = [1, 3, 5, 6, 7, 12]
for value in input {
guard value < 6 else {
break
}
print(value * 2)
}
Optional binding
보호 조건 안에서는 guard let 또는 guard var를 사용해 optional binding을 구현할 수 있습니다. 이는 if let이나 if var와 같은 방식입니다. 보호 절에서 상수나 변수가 존재하게 되면 조건이 만족된 것이므로, 보호 블록 대신 보호 뒤의 코드가 실행됩니다.