Avatar ·

Como verificar se um objeto é uma instância de um tipo específico em Swift?

Olá! Comecei a estudar Swift e me deparei com um problema. Tenho uma hierarquia de classes: a classe base `Vehicle` e duas subclasses `Car` e `Bicycle`. Crio um array do tipo `[Vehicle]` contendo diferentes instâncias. Agora preciso percorrer o array e executar ações diferentes dependendo do tipo específico do objeto. Por exemplo, para `Car` exibir o número de portas, e para `Bicycle` o número de marchas. Em Objective-C eu usaria `isKindOfClass:`, mas em Swift isso não funciona. Tentei escrever assim: ```swift class Vehicle { var name: String init(name: String) { self.name = name } } class Car: Vehicle { var doors: Int init(name: String, doors: Int) { self.doors = doors super.init(name: name) } } class Bicycle: Vehicle { var gears: Int init(name: String, gears: Int) { self.gears = gears super.init(name: name) } } let vehicles: [Vehicle] = [ Car(name: "Sedan", doors: 4),