Set (Set) je množina unikátnych hodnôt. Na rozdiel od List nemá definovaný poradie a každá hodnota sa v ňom nachádza nanajvýš raz.
fun main() {
val set1: Set<Int> = setOf(1, 2, 3, 3, 2) // {1, 2, 3} - duplicitne odstranene
val set2: Set<Int> = emptySet()
val set3: MutableSet<Int> = mutableSetOf(1, 2, 3)
val set4: MutableSet<Int> = mutableSetOf()
set3.add(4) // pridanie prvku
set3 += 5 // pridanie cez operator
set3.remove(2) // odstranenie prvku
println(set3) // [1, 3, 4, 5]
println(3 in set3) // true - overenie existencie
println(2 in set3) // false
}
Sety podporujú matematické operácie - pretínanie, zlučovanie a rozdiel:
fun main() {
val setA = setOf(1, 2, 3, 4)
val setB = setOf(3, 4, 5, 6)
val prienik = setA.intersect(setB) // {3, 4}
val zlucenie = setA.union(setB) // {1, 2, 3, 4, 5, 6}
val rozdiel = setA.subtract(setB) // {1, 2}
val rozdiel2 = setB.subtract(setA) // {5, 6}
println(prienik) // [3, 4]
println(zlucenie) // [1, 2, 3, 4, 5, 6]
println(rozdiel) // [1, 2]
}
Vytvor dva sety obsahujúce čísla 1 až 10 a 5 až 15. Vypočítaj ich prienik, zlučovanie a rozdiel.
Zo zoznamu opakujúcich sa mien vytvor set a vypíš počet unikátnych mien.
Vytvor meniteľný set obľúbených farieb, pridaj farbu, jednu odstráň a over prítomnosť vybranej farby.