Sobes.tech
Junior — Middle

Milyen típusúak lehetnek a halmazban bemutatott elemek?

sobes.tech MI

Válasz az MI-től

iOS-ben egy halmaz elemei (például NSSet vagy Swift-ben Set) lehetnek bármilyen típusúak, amelyek megfelelnek a Hashable protokollnak. Ez azt jelenti, hogy az elemeknek egyedi hash értékkel kell rendelkezniük, és összehasonlíthatónak kell lenniük az egyenlőség szempontjából.

Az elemtípusok lehetnek:

  • Egyszerű típusok: Int, String, Double stb.
  • Egyedi struktúrák és osztályok, amelyek megvalósítják a Hashable protokollt.

Például Swift-ben:

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")]

Így a halmaz tartalmaz egyedi elemeket, amelyek bármilyen típusúak lehetnek, amelyek támogatják a hash-elést és az összehasonlítást.