[swift] 타입 캐스팅을 통한 타입 변환 연산
타입 캐스팅은 Swift에서 인스턴스의 타입을 확인하거나 해당 타입으로 변환하는 과정을 말합니다. 이 기능을 사용하면 코드 안전성을 유지하면서 인스턴스의 타입을 다룰 수 있습니다.
1. as 연산자를 통한 타입 변환
Swift에서는 as
키워드를 사용하여 인스턴스의 타입을 다른 타입으로 변환할 수 있습니다. 이 연산자는 서브클래스를 슈퍼클래스로 변환하거나 프로토콜을 준수하는 타입으로 변환하는 데 사용됩니다.
class Vehicle {
var name: String = ""
}
class Car: Vehicle {
var brand: String = ""
}
let vehicle = Vehicle()
let car = Car()
let vehicleToCar = vehicle as? Car
위의 예제에서 vehicle
인스턴스를 Car
타입으로 변환하기 위해 as?
키워드를 사용하였습니다. 이를 통해 안전하게 타입을 변환하고, 변환이 실패할 경우 nil
을 반환합니다.
2. is 연산자를 통한 타입 확인
타입 캐스팅을 하기 전에 어떤 타입인지 확인하고 싶을 때 is
연산자를 사용할 수 있습니다.
if vehicle is Car {
print("vehicle은 Car 타입입니다.")
} else {
print("vehicle은 Car 타입이 아닙니다.")
}
위의 예제에서 is
연산자를 통해 vehicle
이 Car
타입인지 확인하고 그에 따른 동작을 수행할 수 있습니다.
타입 캐스팅을 통한 타입 변환 및 확인을 사용하여 Swift 언어의 강력한 타입 시스템을 활용할 수 있습니다.