Junior — Middle
Kas võib Set kogumik sisaldada mis tahes tüüpi andmeid või on tüüpi piiranguid?
sobes.tech AI
Vastus AI-lt
Swiftis võib kogum Set sisaldada mis tahes tüüpi elemente, mis vastavad protokollile Hashable. See tähendab, et tüübid peavad suutma arvutada hash-koodi, et tagada elementide unikaalsus Set-is.
Luba tüübid:
- Standardtüübid, nagu Int, String, Double — need juba vastavad Hashable-le.
- Kasutaja määratud struktuurid või klassid, kui nad rakendavad Hashable protokolli.
Näide kasutaja määratud struktuurist, mis sobib Set-ks:
struct Person: Hashable {
let id: Int
let name: String
}
var peopleSet: Set<Person> = []
peopleSet.insert(Person(id: 1, name: "Иван"))
Kui tüüp ei vasta Hashable-le, ei saa seda Set-is kasutada.