Arrays y listas mutables en Kotlin: creación y manipulación
Clase 12 de 35 • Curso de Kotlin
Resumen
Dominar el uso de colecciones, como arrays y listas mutables, en Kotlin es esencial al crear aplicaciones efectivas y optimizadas. Aprender adecuadamente cómo declararlas, acceder a sus elementos individuales y editarlas, dota al desarrollador de herramientas prácticas que flexibilizan el manejo de datos.
¿Qué son y cómo crear arrays en Kotlin?
Los arrays en Kotlin son útiles al almacenar un conjunto fijo y definido de elementos. Puedes declararlos fácilmente usando la instrucción arrayOf junto con los elementos separados por comas:
val emails = arrayOf("Juan@empresa.com", "Carlos@empresa.com", "Wilson@empresa.com")
Cada array es una colección de un solo tipo de dato definido, como cadenas de texto o números.
¿Cómo acceder y modificar elementos de un array?
Acceder a los elementos de un array se logra mediante sus índices, recordando que comienzan en cero:
println(emails[0]) // Accede al primer email
La modificación se realiza usando el operador de acceso:
emails[0] = "nuevoCorreoJuan@empresa.com"
Otra alternativa usando métodos:
emails.set(0, "otroCorreoJuan@empresa.com")
¿Qué pasa al intentar acceder a índices fuera del rango?
Intentar acceder a posiciones más allá del tamaño definido del array generará una excepción.
Por ejemplo, este acceso intentará acceder al cuarto elemento de un array con solo tres elementos:
println(emails[3]) // Error: Index 3 out of bounds
Para evitar estas situaciones, siempre revisa el tamaño del array antes de acceder a elementos específicos.
¿Qué diferencia hay entre arrays y listas mutables?
Mientras los arrays tienen tamaños fijos que no permiten añadir o eliminar sus elementos, las listas mutables son más flexibles y pueden crecer o reducirse:
val listaEmails = mutableListOf<String>()
Esta lista mutable permite operaciones como agregar elementos en cualquier momento:
listaEmails.add("nuevoEmail@empresa.com")
Incluso se puede agregar un grupo de elementos desde otro array:
listaEmails.addAll(arrayOf("Juan@empresa.com", "Carlos@empresa.com"))
¿Cómo agregar o remover elementos específicos?
Para remover un elemento específico basta usar:
listaEmails.remove("Juan@empresa.com")
Cuando necesites insertar un elemento en una posición particular para conservar un orden:
listaEmails.add(0, "Juan@empresa.com") // Inserta en la posición inicial
¿Cómo mostrar todo el contenido de una colección claramente?
Para imprimir ordenadamente todos los elementos de una colección, puedes concatenar los elementos usando joinToString()
:
println("Lista completa: ${listaEmails.joinToString()}")
¿Tienes alguna consulta sobre el manejo de arrays o listas mutables en Kotlin que quisieras profundizar? Coméntanos tus dudas para seguir aprendiendo juntos.