Junior — Middle
Kādi nosacījumi jāizpilda, lai objekts varētu tikt izmantots kā atslēga vārdnīcā?
sobes.tech AI
Atbilde no AI
iOS (un kopumā Swift) objekta kā atslēgu vārdnīcā (Dictionary) ir jāatbilst Hashable protokolam. Tas nozīmē, ka objekts:
- Ir jābūt stabilam un unikālam hash kodam, kas nemainās objekta dzīves laikā.
- Jāīsteno metode
hash(into:), kas pievieno objekta komponentes hash funkcijai. - Jāīsteno vienlīdzības operators
==, lai vārdnīca varētu salīdzināt atslēgas.
Piemērs:
struct Person: Hashable {
let id: Int
let name: String
}
let dict: [Person: String] = [Person(id: 1, name: "Alice"): "Developer"]
Tādēļ atslēgas ir jābūt hashable un salīdzināmas, lai vārdnīca darbotos pareizi.