Swift에서, optional 의 내용에 대해 전환되는 값을 테스트하는 switch 문 에 case를 작성하고 선택 사항에 포함 된 경우 case를 건너 뛰려면 nil어떻게해야합니까?
이것이 어떻게 보일지 상상해보십시오.
let someValue = 5
let someOptional: Int? = nil
switch someValue {
case someOptional:
// someOptional is non-nil, and someValue equals the unwrapped contents of someOptional
default:
// either, someOptional is nil, or someOptional is non-nil but someValue does not equal the unwrapped contents of someOptional
}
난 그냥 정확히처럼 작성하는 경우, 컴파일러는 불평 someOptional풀어 아니지만, 명시 적으로 포장을 벗긴 추가하여 경우 !물론 런타임 오류의 말에, 나는 어떤 시간이 someOptional포함되어 있습니다 nil. ?대신 추가 하는 것은 !나에게 의미가 있지만 (선택적 체인의 정신으로), 컴파일러 오류가 사라지는 것은 아닙니다 (즉, 실제로 선택 사항을 풀지 않음).