Sobes.tech
Junior — Middle

Pode explicar o que significa o protocolo Equatable em Swift e para que serve?

sobes.tech IA

Resposta da IA

O protocolo Equatable em Swift é usado para definir a capacidade de comparar objetos por igualdade. Se um tipo cumprir este protocolo, pode-se usar o operador == para comparar duas instâncias desse tipo.

Isto é importante, por exemplo, para verificar se um objeto mudou, para filtragem, busca e outras operações onde é necessário entender se dois valores são iguais.

Exemplo de implementação:

struct Person: Equatable {
    let name: String
    let age: Int
}

let person1 = Person(name: "Ivan", age: 30)
let person2 = Person(name: "Ivan", age: 30)

if person1 == person2 {
    print("As pessoas são iguais")
}

No Swift 4.1 e versões superiores, o compilador pode gerar automaticamente a implementação de Equatable para estruturas e enumerações, desde que todas as suas propriedades também sejam Equatable.