Junior — Middle
В кои случаи се прилага протоколът Equatable в Swift?
sobes.tech AI
Отговор от AI
Протоколът Equatable в Swift се прилага, когато трябва да определите как да сравнявате два екземпляра от тип за равенство.
Ако вашият тип съответства на Equatable, трябва да реализирате метода ==, който връща true, ако двата обекта се считат за равни, и false — ако не.
Това е полезно за сравняване на стойности, например при проверка за промени, филтриране или използване в колекции, където е важно да се определи уникалността на елементите.
Пример:
struct User: Equatable {
let id: Int
let name: String
static func == (lhs: User, rhs: User) -> Bool {
return lhs.id == rhs.id && lhs.name == rhs.name
}
}
От Swift 4.1 нататък компилаторът може автоматично да генерира реализация на Equatable за структури и изброявания, ако всички техни свойства също са Equatable.