guard let track = item else { return }
guard 뒤에 따라붙는 코드의 실행 결과가 true일 때 코드가 계속 실행됩니다.
if 구문과는 다르게 guard 구문은 항상 else 구문이 뒤에 따라와야 합니다.
만약 guard 뒤 따라오는 Bool 값이 false라면 else의 블록 내부 코드를 실행하게 됩니다.
이 내부 코드에는 자신보다 상위 코드 블록을 종료하는 코드가 반드시 들어가게 됩니다.
코드 블록 종료시 return, break, continue, throw 등 제어문 전환 명령을 사용합니다.
if let prefix = rawPrefix {
print(prefix+name)
}
else {
print("need prefix")
}
if let은 조건에 따라 다른 결과값을 도출해내야 할 때 사용한다.
옵셔널 바인딩 된 상수는 그 블럭 안에서만 변수가 사용 가능합니다.
정리하자면, guard let은 일반변수처럼 사용 가능하면서 예외사황에 대한 처리가 필수적이다.
if let은 if, else 블럭에서만 구분하여 사용이 가능하다는 차이점이 있다.
'iOS' 카테고리의 다른 글
아이폰12 초고속으로 만나는 날 임박! (10월 14일 새벽2시) (0) | 2020.10.13 |
---|---|
[32일차] Animation은 왜 사용하는 것인가? (0) | 2020.09.15 |
[31일차] @IBAction과 @IBOutlet은 무엇인가? (0) | 2020.09.04 |
[30일차] @escaping 이란? (0) | 2020.08.28 |
[29일차] Protocol이란? (0) | 2020.08.27 |
댓글