Gruki Logo

Gruki - Documentación de Programación

Kotlin

Colecciones en Kotlin: ¡Como organizar tus juguetes!

Aprende qué son las listas, conjuntos y mapas en Kotlin de manera sencilla. Descubre cómo usarlos con ejemplos fáciles de entender.

En Kotlin, las colecciones son como cajas donde puedes guardar muchas cosas. Imagina que tienes diferentes cajas para organizar tus juguetes: una para los coches, otra para los muñecos y otra para los bloques de construcción. Las colecciones en Kotlin hacen algo parecido con la información.

Hay tres tipos principales de colecciones: Listas, Conjuntos y Mapas. Cada una tiene sus propias reglas y es útil para diferentes situaciones. ¡Vamos a verlas!

Piensa en una lista como una fila de niños esperando para subir al autobús. Cada niño tiene su lugar y el orden importa. Un conjunto, en cambio, es como un montón de caramelos revueltos en un bol. No importa el orden y no hay caramelos repetidos. Un mapa es como un diccionario, donde cada palabra (clave) tiene su definición (valor).

Listas: ¡Como una lista de la compra!

Una lista en Kotlin es una colección ordenada de elementos. Esto significa que los elementos tienen un orden específico y puedes acceder a ellos por su posición (índice). Piensa en una lista de la compra: el primer elemento es lo primero que tienes que comprar, el segundo es lo siguiente, y así sucesivamente.

Puedes tener listas que se pueden modificar (mutables) o listas que no se pueden modificar (inmutables). Las listas inmutables son como una foto: no puedes cambiar nada. Las listas mutables son como una pizarra: puedes añadir, quitar o cambiar cosas.

Puntos importantes:

  • Para crear una lista inmutable, usamos `listOf()`. Por ejemplo, `listOf("manzana", "plátano", "naranja")`. Esta lista no se puede modificar después de crearla.
  • Para crear una lista mutable, usamos `mutableListOf()`. Por ejemplo, `mutableListOf("manzana", "plátano", "naranja")`. A esta lista le podemos añadir más frutas, quitar algunas o cambiar las que ya están.

Conjuntos: ¡Como un montón de cromos repetidos!

Un conjunto en Kotlin es una colección de elementos únicos. Esto significa que no puede haber elementos repetidos. Piensa en un montón de cromos repetidos que tienes. Si tienes dos cromos iguales, solo necesitas guardar uno.

Al igual que las listas, los conjuntos pueden ser mutables o inmutables. Los conjuntos inmutables no se pueden modificar después de crearlos, mientras que los conjuntos mutables sí.

Puntos importantes:

  • Para crear un conjunto inmutable, usamos `setOf()`. Por ejemplo, `setOf(1, 2, 3, 4, 5)`. Si intentas añadir el número 2 otra vez, no pasará nada, porque ya está en el conjunto.
  • Para crear un conjunto mutable, usamos `mutableSetOf()`. Por ejemplo, `mutableSetOf(1, 2, 3, 4, 5)`. Puedes añadir nuevos números al conjunto o quitar los que ya no quieras.

Mapas: ¡Como un diccionario!

Un mapa en Kotlin es una colección de pares clave-valor. Piensa en un diccionario: cada palabra (clave) tiene su definición (valor). En un mapa, cada clave debe ser única, pero los valores pueden repetirse.

Los mapas también pueden ser mutables o inmutables. Los mapas inmutables no se pueden modificar después de crearlos, mientras que los mapas mutables sí.

Puntos importantes:

  • Para crear un mapa inmutable, usamos `mapOf()`. Por ejemplo, `mapOf("rojo" to "#FF0000", "verde" to "#00FF00", "azul" to "#0000FF")`. Aquí, "rojo", "verde" y "azul" son las claves, y "#FF0000", "#00FF00" y "#0000FF" son los valores (códigos de color).
  • Para crear un mapa mutable, usamos `mutableMapOf()`. Por ejemplo, `mutableMapOf("rojo" to "#FF0000", "verde" to "#00FF00", "azul" to "#0000FF")`. Puedes añadir nuevos colores al mapa o cambiar los códigos de los colores existentes.

Ejemplos de Código

Ejemplo de cómo crear y usar una lista mutable en Kotlin. Añadimos elementos a la lista, los mostramos por consola y luego los eliminamos. Es como preparar una receta y luego comerla.

Lenguaje: Kotlin
kotlin

Explicación del código:

  1. Línea 1: fun main() { - Define la función principal del programa. Es donde empieza todo, como el principio de un cuento.
  2. Línea 2: val miLista: MutableList<String> = mutableListOf("manzana", "banana") - Crea una lista mutable llamada 'miLista' que solo puede contener Strings (textos). Empieza con 'manzana' y 'banana' dentro, como una caja con esas dos frutas.
  3. Línea 3: println("Lista inicial: $miLista") - Imprime en la consola el contenido de la lista al principio. Es como mostrarle a alguien lo que hay en la caja.
  4. Línea 4: miLista.add("naranja") - Añade "naranja" al final de la lista. Es como meter una naranja en la caja.
  5. Línea 5: println("Lista después de añadir naranja: $miLista") - Imprime la lista después de añadir la naranja. Es como volver a mostrar la caja con la nueva fruta.
  6. Línea 6: miLista.remove("banana") - Elimina "banana" de la lista. Es como sacar la banana de la caja.
  7. Línea 7: println("Lista después de eliminar banana: $miLista") - Imprime la lista después de eliminar la banana. Volvemos a mostrar la caja después de sacar una fruta.
  8. Línea 8: for (fruta in miLista) { - Inicia un bucle que recorre cada elemento de la lista.
  9. Línea 9: println("Fruta: $fruta") - Imprime cada fruta de la lista. Muestra una por una las frutas que quedan en la caja.

Ejemplo de como crear y usar un mapa mutable en Kotlin. Añadimos traducciones de palabras, las mostramos y actualizamos una traduccion. Es como un diccionario que podemos modificar.

Lenguaje: Kotlin
kotlin

Explicación del código:

  1. Línea 1: fun main() { - Define la función principal del programa.
  2. Línea 2: val traducciones: MutableMap<String, String> = mutableMapOf("hola" to "hello", "adios" to "goodbye") - Crea un mapa mutable llamado 'traducciones' que relaciona Strings (palabras en español) con Strings (palabras en inglés). Empieza con las traducciones de "hola" y "adios", como un mini-diccionario.
  3. Línea 3: println("Traducciones iniciales: $traducciones") - Imprime el contenido del mapa al principio. Es como mostrar el mini-diccionario al principio.
  4. Línea 4: traducciones["gracias"] = "thank you" - Añade la traducción de "gracias" al mapa. Añadimos una nueva palabra al mini-diccionario.
  5. Línea 5: println("Traducciones después de añadir gracias: $traducciones") - Imprime el mapa después de añadir la traducción de "gracias". Mostramos el mini-diccionario con la nueva palabra.
  6. Línea 6: traducciones["hola"] = "hi" - Actualiza la traducción de "hola" a "hi". Cambiamos la traducción de una palabra que ya estaba en el mini-diccionario.
  7. Línea 7: println("Traducciones después de actualizar hola: $traducciones") - Imprime el mapa después de actualizar la traducción de "hola". Mostramos el mini-diccionario con la traducción modificada.
  8. Línea 8: for ((palabra, traduccion) in traducciones) { - Inicia un bucle que recorre cada par palabra-traducción del mapa.
  9. Línea 9: println("$palabra en inglés es $traduccion") - Imprime cada par palabra-traducción. Muestra cada palabra y su traducción una por una.

Recursos relacionados

Explora más contenido relacionado con Colecciones: Listas, Conjuntos y Mapas para profundizar tus conocimientos.