티스토리 뷰
반응형
if let vs guard let (if let, guard let 차이 비교)
1. if-let
- optional 타입의 값이 nil인지 판단하고 nil이 아닐 경우 if 블럭 안에서 optional이 unwrapped 된 상태로 사용 가능하다.
- if-let을 사용할 때는 추출하려는 변수의 이름과 동일하게 사용해도 상관 없다.
2. guard-let
guard 뒤에 조건이 true일 때 코드가 계속 실행되며 반드시 뒤에 else 구문이 필요하다.
guard 뒤 조건이 false라면 else 블럭이 실행되며, 자신보다 상위 코드 블록을 종료하는 코드가 반드시 들어가야한다. (return, break, continue, throw)
옵셔널 바인딩으로 사용할 경우 guard 구문 실행 코드 아래부터 함수 블럭 내의 지역상수처럼 사용 가능하다.
guard-let의 장점:
- 예외사항만을 처리하고 싶을 때에는 guard 구문을 사용하는 것이 더 간편하다.
3. if-let guard-let 사용
- 전환 제어문(return...)을 사용할 수 있으며 함수 블럭 안에서 변수를 활용하고 싶을 때에는 guard let을 사용한다.
- 위의 경우가 아니며 간단하게 if 블럭 안에서만 해당 변수를 사용할 경우는 if let을 사용한다.
반응형
'iOS 앱개발 > Swift Basic' 카테고리의 다른 글
[Swift] 프로퍼티(Properties) (0) | 2021.03.23 |
---|---|
[Swift] 열거형(Enum) (0) | 2021.03.23 |
[Swift] Datatype (0) | 2021.03.23 |
[Swift] Basic 02 (0) | 2021.03.23 |
[Swift] Basic 01 (0) | 2021.03.23 |
댓글
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 토마토#백준알고리즘#Python
- 공유기 설치#BOJ#이분탐색#Python
- Distinct#Codility#Python
- 반복수열#백준알고리즘#Python
- 미로 탐색#백준알고리즘#Python
- 백준 알고리즘#BackTracking
- 쿼드트리#BOJ#분할정복#Python
- 순열사이클#BOJ#Python
- 날짜 계산#BOJ#완전탐색#Python
- django
- Brackets#Stacks and Queues#Codility#Python
- Triangle#Sorting#Codility#Python
- 랜선자르기#이분탐색#BOJ#Python
- 터틀비치#리콘#xbox#controller
- 파이썬알고리즘인터뷰#4장
- 배열합치기#분할정복#BOJ#Python
- Swift#Tuples#Range
- 암호코드#dp#BOJ#Python
- django#slicing
- 텀 프로젝트#백준알고리즘#Python
- 나무자르기#BOJ#이분탐색#Python
- NumberofDiscIntersections#Codility#Sort#Python
- 종이자르기#분할정복#BOJ#Python
- PassingCars#Codility#Python
- 섬의개수#백준알고리즘#Python
- 병든 나이트#BOJ#탐욕법#Python
- filter#isalnum#lower
- API#lazy#
- 리모컨#완전탐색#BOJ#Python
- N으로 표현#DP#Programmers#Python
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함