[swift] 옵셔널 체이닝을 사용한 옵셔널 타입 인스턴스 반환
옵셔널 체이닝을 사용하여 옵셔널 타입의 인스턴스를 반환하는 예시 코드를 살펴보겠습니다.
class Person {
var residence: Residence?
}
class Residence {
var address: Address?
}
class Address {
var street: String = "1234 Swift Avenue"
}
let person = Person()
if let street = person.residence?.address?.street {
print("Person's street address is \(street)")
} else {
print("Unable to retrieve the street address")
}
위의 코드에서 street
상수는 person
인스턴스의 residence
및 address
프로퍼티에 안전하게 접근하여 값이 nil일 경우에 대비한 옵셔널 타입으로 할당됩니다.
이렇게 옵셔널 체이닝을 사용하면 연속된 옵셔널 타입 프로퍼티에 안전하게 접근할 수 있으며, 마지막으로 연결된 프로퍼티에 값이 존재하지 않는다면 자연스럽게 nil을 반환합니다.