[Swift] Guard

팔랑이·2023년 6월 14일
post-thumbnail

guard 구문은 다음과 같은 구조를 가진다.

guard 조건문 else {
	// 조건문이 false일 때 실행될 코드
    <종료구문: return, break, continue, throw>
}	// 조건문이 true일 때 실행될 코드

예시

func multiplyByTen(value:Int) {
	guard let number = value, number<10 else {
    	print("Too high number")
        return
    }
    let result = number * 10
    print(result)
}

예시의 함수는 옵셔널 형태의 정수값을 매개변수로 받는다. guard 구문은 옵셔널 값을 언래핑하기 위해 옵셔널 바인딩을 사용하는 것.

위 예제에서 특별히 중요한 점은, 언래핑된 number 변수는 guard 구문 밖에서도 유효하다. (if구문 안의 변수는 if구문 안에서만 유효한 것과 구분됨)

profile
정체되지 않는 성장

0개의 댓글