Sobes.tech
Junior — Middle

Kas saab kasutada oma andmetüüpi võtmena sõnastikule või hajutustabelile?

sobes.tech AI

Vastus AI-lt

Swiftis saate kasutada oma andmetüüpideks isiklikke tüüpe sõnastiku (Dictionary) võtmeks, kuid sel juhul peab tüüp vastama Hashable protokollile. See tähendab, et teie tüüp peab suutma arvutada hash-väärtuse ja õigesti rakendama võrdluse.

Näide:

struct Person: Hashable {
    let id: Int
    let name: String
}

var dict: [Person: String] = [:]
dict[Person(id: 1, name: "Иван")] = "Arendaja"

Kui teie tüüp ei vasta Hashable-le, siis ei saa seda kasutada võtmena sõnastikus.