Sobes.tech
Junior — Middle

Jaké druhy mohou být prvky v množině?

sobes.tech AI

Odpověď od AI

V iOS mohou být prvky množiny (například v NSSet nebo Set ve Swiftu) jakéhokoliv typu, který odpovídá protokolu Hashable. To znamená, že prvky musí mít jedinečný hash a být porovnatelné na rovnost.

Typy prvků mohou být:

  • Jednoduché typy: Int, String, Double atd.
  • Vlastní struktury a třídy, které implementují protokol Hashable.

Například ve Swift:

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

Tímto způsobem množina obsahuje unikátní prvky, které mohou být jakéhokoliv typu, podporujícího hashování a porovnávání.