옵셔널에 저장된 값을 사용하기 위해서는 값을 언레핑시켜야 한다.nil이 저장된 상태에서 값을 강제 추출시 크레쉬가 발생한다.옵셔널 표현식을 언래핑하면 논 옵셔널 타입으로 추출된다.
OptionalExpression에 nil값이 아니라면 상수에 추출된 값이 저장되게 된다. 만약 nil이라면 바인딩이 실패하면서 다음 문장을 실행하게 된다. 강제 추출과 다르게 nil값이 있더라도 크레쉬가 일어나지 않는다.
IUO - 자동 추출 옵셔널, 자료형 뒤에 !로 표시된다.
이항 연산자로 왼쪽의 피연산자는 optional이며 오른쪽의 피연산자는 non-optional이고 모두 같은 타입이여야 한다. ?? 뒤에 nil값일때 리턴할 값을 작성한다.
옵셔널 채이닝의 결과는 옵셔널이다.옵셔널 체이닝이 포함된 표현식에서 하나라도 nil이라면 이어지는 평가식을 확인하지않고 nil을 리턴한다.optiona타입이 없기때문에 마지막 표현식에 따라 String 타입이 리턴된다.중간에 옵셔널 표현식이 있으므로 마지막 표현식에 따
Optional Pattern을 이해하기 위해서는 옵셔널의 구현되어있는것을 알아야한다.열거형으로 구현되어있고 2개의 캐이스가 있는데 옵셔널에 저장되는 값은 some case에 연관값으로 저장되고 저장되어있지 않는것은 none case이다. 그리고 genericd으로 선