콘텐츠로 건너뛰기
Home » double wrapped optional

double wrapped optional

이중옵셔널에 대하여 – Swift

Swift의 캐스팅 연산자인 as? 는 T 타입으로 캐스팅에 실행할 가능성을 내포하기 때문에 T? 타입을 만들게 된다. 이 때 변환하려는 값이 이미 옵셔널타입인 경우에는 nil이 아니면 T 타입으로 간주하여 최종 결과는 T??가 아닌 T?가 된다. var a: Any? = 8 if let x = a as? Int { // a는 Any?이면서 그 값이 Int 형으로 변환될 수 있으므로 // Int 형으로 변환된 후에 옵셔널로 마크되어 Int? 타입이 된다. // 다시 이 값은 let x = 에 의해서 언래핑되고 if 체크를 통과한다.… 더 보기 »이중옵셔널에 대하여 – Swift