Junior — Middle
Ce condiții trebuie îndeplinite pentru ca un obiect să poată fi utilizat ca cheie într-un dicționar?
sobes.tech AI
Răspuns de la AI
În iOS (și în Swift în general), pentru a utiliza un obiect ca și cheie într-un dicționar (Dictionary), acesta trebuie să îndeplinească protocolul Hashable. Aceasta înseamnă că obiectul trebuie:
- Să aibă un cod hash stabil și unic, care să nu se schimbe pe durata vieții obiectului.
- Să implementeze metoda
hash(into:), care adaugă componentele obiectului în funcția de hash. - Să implementeze operatorul de egalitate
==, astfel încât dicționarul să poată compara cheile.
Exemplu:
struct Person: Hashable {
let id: Int
let name: String
}
let dict: [Person: String] = [Person(id: 1, name: "Alice"): "Developer"]
Prin urmare, cheile trebuie să fie hashabile și comparabile pentru funcționarea corectă a dicționarului.