[swift] 옵셔널 체이닝을 사용한 옵셔널 타입 선택

Swift에서 옵셔널 체이닝을 사용하면 옵셔널 값에 안전하게 접근하고 속성, 메서드 또는 서브스크립트를 호출할 수 있습니다. 옵셔널 체이닝은 옵셔널 값이 nil일 수 있는 상황에서 유용하게 사용됩니다.

옵셔널 체이닝의 기본 개념

옵셔널 체이닝을 사용하면 속성, 메서드 또는 서브스크립트에 대한 호출을 시도하는 동안 옵셔널 값이 nil이면 호출이 실패하고 전체 표현식의 결과는 nil이 됩니다. 옵셔널 체이닝을 통해 깔끔하게 옵셔널 값을 다룰 수 있으며, 옵셔널 값의 선택적인 산술 또는 이스케이핑을 용이하게 할 수 있습니다.

class Person {
    var residence: Residence?
}

class Residence {
    var address: Address?
}

class Address {
    var street: String = "123 Swift Street"
}

let person = Person()
if let street = person.residence?.address?.street {
    print("Street: \(street)")
} else {
    print("Unable to retrieve the street")
}

위의 코드에서 person 객체의 residenceaddress 속성이 nil이기 때문에 옵셔널 체이닝 연산자 ?를 통해 nil 값으로 안전하게 처리됩니다.

옵셔널 값의 강제 추출과 옵셔널 바인딩

옵셔널 체이닝은 옵셔널 값의 강제 추출이나 옵셔널 바인딩과 다르게 옵셔널 값에 안전하게 접근하는 것을 보장합니다. 옵셔널 체이닝은 옵셔널 값의 존재 여부를 확인하고 값이 존재하면 해당 값을 사용하는 방식으로 동작합니다.

옵셔널 체이닝을 사용하여 옵셔널 값에 안전하게 접근하고 선택하는 방법에 대해 더 알아보겠습니다.