새소식

iOS/Swift

[Swift] 옵셔널 체이닝

  • -

 

 

참조 :  Swift 스위프트 프로그래밍 3판 Swift 5, 저자 야곰 (한빛미디어)
인프런 강의 (iOS 최신 앱 개발 강의 - 기초부터 핵심 요소, 간단한 포폴까지 제작)

 

옵셔널 체이닝(Optional Chaining)


※ 옵셔널(Optional)이란? https://kimkhuna99.tistory.com/17?category=1007858

- 옵셔널에 속해 있는 nil일지도 모르는 프로퍼티, 메서드, 서브스크립션 등을 가져오거나
호출할 때 사용할 수 있는 일련의 과정

- 옵셔널에 값이 있다면 프로퍼티, 메서드, 서브스크립트 등을 호출 가능

- 옵셔널이 nil이라면 프로퍼ㅣ, 메서드, 서브스크립트 등은 nil을 반환

- 여러 값이 중첩된 형태에서 활용도 증가

- 중첩된 옵셔널 중 하나라도 값이 존재하지 않는다면 결과적으로 nil을 반환

- 프로퍼티나 메서드 또는 서브스크립트를 호출하고 싶은 옵셔널 변수나 상수 뒤에 물음표(?)를 붙여 표현

- 옵셔널이 nil이 아니라면 정상적으로 호출됨, nil이라면 nil을 반환

 

※ 물음표 대신에 느낌표를 사용할수 도 있는데 옵셔널에서 값을 강제로 추출하는 효과가 있음

 

14-4 옵셔널 바인딩의 사용
14-5 옵셔널 체이닝의 사용

- 똑같은 결과이지만, 코드의 간결함과 분량이 차이가 있음

- 옵셔널 체이닝을 통해 여러 단계로 복잡하게 중첩된 옵셔널 프로퍼티나 메서드 등에 매번 nil 체크를 하지 않아도 손쉽게 접근 가능

 

728x90

'iOS > Swift' 카테고리의 다른 글

[Swift] 프로토콜  (0) 2022.07.03
[Swift] 타입캐스팅  (0) 2022.07.03
[Swift] Enum(열거형)  (0) 2022.05.14
[Swift] Dictionary 와 Set  (0) 2022.05.14
[Swift] 데이터 타입  (0) 2022.05.14
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.