Swift | Optional 과 추출 방법

일어나 개발해야지·2024년 1월 11일

Swift

목록 보기
6/21
post-thumbnail

Intro

swift에는 옵셔널타입 존재한다.
사용 방법은 저장 속성을 선언할 때
타입 뒤에 ? 물음표를 추가하는 방식이다.

var num: Int?
  • 옵셔널은 타입의 한 종류이며
  • 값이 있을 수도 있고, 없을 수도 있다는 걸 의미한다.
  • 프로퍼티 선언시 초기값을 지정하지 않을 때 사용한다.
  • 현재 num 타입은 Int? 이며, 값을 출력하면 nil 값이 확인된다.

옵셔널과 nil

nil은 값이 없음을 표현하는 키워드이다.
메모리 주소를 가지고 있지만 값이 비어있는 상태를 나타낸다.
옵셔널은 nil값을 포함하기 때문에 기본 타입보다 범위가 넓다.

옵셔널을 사용한다는 건 값이 nil일 수 있다는 가능성을 안고 있다는 의미이다.
값이 nil인 경우를 대비하기 위해서 옵셔널로 래핑된다.
옵셔널로 처리된 값은 아래와 같이 출력되는 걸 확인할 수 있다.

Optional(42)

옵셔널로 래핑되어있는 값을 사용하려면
값을 추출하는 과정이 필요하며, 이를 언래핑이라고 표현한다.

옵셔널 언래핑의 4가지 방법

1. if let 바인딩 : 새로운 변수에 할당함으로 nil값이 아닌지 확인

    if let check = num {
      print(check)
    }

2. if 문으로 nil이 아닌지를 확인후 사용

    if num != {
    	 print(check)
    }

3. 강제 언래핑 : 값이 있다는게 확실할 때 사용

    print(num!)

4. 닐 코얼레싱 : 디폴트 값을 제시할 수 있을 때

    print(num ?? "홍길동")

0개의 댓글