Junior — Middle
Cum se determină tipul corect de cheie pentru utilizarea într-un dicționar?
sobes.tech AI
Răspuns de la AI
În iOS (Swift), cheia pentru un dicționar trebuie să respecte protocolul Hashable. Aceasta înseamnă că cheia trebuie să poată calcula o valoare hash și să fie comparată pentru egalitate, astfel încât dicționarul să poată stoca și căuta valorile în mod eficient.
De exemplu, tipurile standard precum String, Int, UUID implementează deja Hashable și sunt potrivite pentru utilizare ca chei.
Dacă creați un tip personalizat pentru cheie, trebuie să implementați protocolul Hashable:
struct User: Hashable {
let id: Int
let name: String
}
var dict: [User: String] = [:]
dict[User(id: 1, name: "Alice")] = "Developer"
Prin urmare, tipul corect pentru cheie este cel care:
- implementează
Hashable; - are valori unice pentru chei, pentru a evita coliziunile;
- este imuabil (este mai bine să folosiți structuri sau proprietăți imuabile).