Sobes.tech
Junior — Middle

Millist tüüpi võivad olla esitatud elemendid kogumis?

sobes.tech AI

Vastus AI-lt

iOS-is võivad kogumi elemendid (näiteks NSSet või Set Swiftis) olla ükskõik millise tüübiga, mis vastab Hashable protokollile. See tähendab, et elementidel peab olema unikaalne hash ja need peavad olema võrreldavad võrdsuse kontrollimiseks.

Elementide tüübid võivad olla:

  • Lihtsad tüübid: Int, String, Double jne.
  • Kohandatud struktuurid ja klassid, mis implementeerivad Hashable protokolli.

Näiteks Swiftis:

let numbers: Set<Int> = [1, 2, 3]
let names: Set<String> = ["Anna", "Boris", "Viktor"]

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

let people: Set<Person> = [Person(id: 1, name: "Ivan"), Person(id: 2, name: "Maria")]

Seega, kogum sisaldab unikaalseid elemente, mis võivad olla ükskõik millise tüübiga, mis toetab hashimist ja võrdlust.