Junior — Middle
Hoe bepaal je het juiste type sleutel voor gebruik in een woordenboek?
sobes.tech AI
Antwoord van AI
In iOS (Swift) moet de sleutel voor een woordenboek voldoen aan het protocol Hashable. Dit betekent dat de sleutel een hash-waarde moet kunnen berekenen en op gelijkheid moet kunnen worden vergeleken, zodat het woordenboek waarden efficiënt kan opslaan en zoeken.
Bijvoorbeeld, standaardtypen zoals String, Int, UUID implementeren al Hashable en zijn geschikt voor gebruik als sleutels.
Als je een eigen type voor de sleutel maakt, moet je het protocol Hashable implementeren:
struct User: Hashable {
let id: Int
let name: String
}
var dict: [User: String] = [:]
dict[User(id: 1, name: "Alice")] = "Developer"
Dus, het juiste type voor de sleutel is er een dat:
Hashableimplementeert;- unieke waarden voor de sleutels heeft, om botsingen te voorkomen;
- onveranderlijk is (het is beter om structuren of onveranderlijke eigenschappen te gebruiken).