Sets en Kotlin
En Kotlin, un Set es una colección de elementos únicos, lo que significa que no puede contener elementos duplicados. Los Set en Kotlin son inmutables por defecto, lo que significa que no puedes modificar su tamaño una vez que se han creado.
val numeros = setOf(1, 2, 3, 4, 5)
En el ejemplo anterior, se crea un Set numeros con los valores 1, 2, 3, 4, 5. Los Set en Kotlin se crean utilizando la función setOf() seguida de los valores del Set entre paréntesis.
Acceso a elementos de un Set
Puedes acceder a elementos individuales de un Set utilizando la función contains() para comprobar si un elemento está presente en el Set.
val contieneTres = numeros.contains(3)
val contieneSeis = numeros.contains(6)
En el ejemplo anterior, se comprueba si el Set numeros contiene los elementos 3 y 6 utilizando la función contains().
Iteración sobre un Set
Puedes iterar sobre los elementos de un Set utilizando un bucle for o la función forEach().
for (numero in numeros) {
println(numero)
}
numeros.forEach { numero ->
println(numero)
}
En el ejemplo anterior, se itera sobre los elementos del Set numeros utilizando un bucle for y la función forEach().
Sets de tipos primitivos
En Kotlin, puedes utilizar Set de tipos primitivos como IntSet, DoubleSet, BooleanSet, etc. para mejorar el rendimiento de tu código.
val enteros = intSetOf(1, 2, 3, 4, 5)
val dobles = doubleSetOf(1.0, 2.0, 3.0, 4.0, 5.0)
val booleanos = booleanSetOf(true, false, true, false)
En el ejemplo anterior, se crean Set de tipos primitivos IntSet, DoubleSet y BooleanSet con valores iniciales.
Modificación de elementos de un Set
Los Set en Kotlin son inmutables por defecto, por lo que no puedes modificar los elementos de un Set una vez que se ha creado. Si necesitas un Set mutable, puedes utilizar la función mutableSetOf().
val numeros = mutableSetOf(1, 2, 3, 4, 5)
numeros.add(6)
En el ejemplo anterior, se crea un Set mutable numeros con los valores 1, 2, 3, 4, 5 y se añade el valor 6 al Set utilizando la función add().
Operaciones con Sets
Los Set en Kotlin proporcionan una serie de operaciones útiles, como size para obtener el tamaño del Set, contains para comprobar si un elemento está presente en el Set, union para unir dos Set, intersect para obtener la intersección de dos Set, etc.
val numerosPares = setOf(2, 4, 6, 8, 10)
val numerosImpares = setOf(1, 3, 5, 7, 9)
val union = numeros.union(numerosPares)
val interseccion = numeros.intersect(numerosImpares)
val diferencia = numeros.subtract(numerosPares)
val contieneTodos = numeros.containsAll(numerosPares)
val esVacio = numeros.isEmpty()
En el ejemplo anterior, se utilizan las operaciones union() e intersect() para realizar operaciones comunes con los Set numeros, numerosPares y numerosImpares.
Estas operaciones sirven para lo siguiente:
union(): Devuelve unSetque contiene todos los elementos de los dosSet.intersect(): Devuelve unSetque contiene los elementos comunes de los dosSet.subtract(): Devuelve unSetque contiene los elementos del primerSetque no están en el segundoSet.containsAll(): Comprueba si unSetcontiene todos los elementos de otroSet.isEmpty(): Comprueba si unSetestá vacío.
Los Set en Kotlin son una forma eficiente de almacenar y manipular colecciones de elementos únicos. Puedes utilizar las operaciones proporcionadas por los Set para realizar operaciones comunes, como unir, intersecar, restar y comparar Set entre sí.
Si necesitas un Set mutable, puedes utilizar la función mutableSetOf() para crear un Set que puedas modificar. Los Set en Kotlin son una herramienta poderosa que te permite trabajar con colecciones de elementos únicos de forma eficiente y concisa.