0Pricing
Kotlin Academy · Lección

mutableListOf, mutableMapOf: constructores mutables

Cree colecciones mutables y modifíquelas de forma segura.

mutableListOf, mutableMapOf: constructores mutables es una lección gratuita de Kotlin Academy en CoddyKit. Esta es la lección 2 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Kotlin Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Kotlin Academy incluye 4 lecciones en total.

Cuándo necesita mutabilidad

Las colecciones mutables permiten añadir, eliminar y actualizar elementos. Úselas cuando la colección crezca o cambie con el tiempo.

mutableListOf

mutableListOf crea una MutableList respaldada por ArrayList. Puede añadir, eliminar y reemplazar elementos.
val list = mutableListOf("a", "b", "c")
list.add("d")
list.add(0, "z")  // insert at index 0
list.remove("b")
println(list)  // [z, a, c, d]

mutableSetOf

mutableSetOf crea una MutableSet. add devuelve false si el elemento ya existe.
val set = mutableSetOf(1, 2, 3)
set.add(4)
set.add(2)  // already exists, no change
set.remove(1)
println(set)  // [2, 3, 4]

mutableMapOf

mutableMapOf crea una MutableMap. Use put o [] para insertar y actualizar elementos.
val map = mutableMapOf("a" to 1, "b" to 2)
map["c"] = 3
map["a"] = 10      // update
map.remove("b")
println(map)  // {a=10, c=3}

addAll, removeAll, retainAll

Operaciones masivas para colecciones mutables.
val nums = mutableListOf(1, 2, 3)
nums.addAll(listOf(4, 5, 6))
println(nums)  // [1, 2, 3, 4, 5, 6]
nums.removeAll { it % 2 == 0 }
println(nums)  // [1, 3, 5]

clear y replaceAll

clear elimina todos los elementos. replaceAll transforma cada elemento en su lugar.
val list = mutableListOf(1, 2, 3, 4)
list.replaceAll { it * 2 }
println(list)  // [2, 4, 6, 8]
list.clear()
println(list)  // []

Crear una List con buildList

buildList crea una lista de solo lectura mediante un creador mutable: una forma clara y concisa.
val squares = buildList {
    for (i in 1..5) add(i * i)
}
println(squares)  // [1, 4, 9, 16, 25]

buildMap y buildSet

Del mismo modo, buildMap y buildSet permiten crear mapas y conjuntos mediante operaciones mutables y devuelven resultados de solo lectura.
val map = buildMap {
    put("en", "English")
    put("de", "German")
    put("tr", "Turkish")
}
println(map["tr"])  // Turkish

ArrayList, LinkedList: tipos explícitos

Si necesita características de rendimiento específicas, use ArrayList o ArrayDeque directamente.
val arrayList = ArrayList<String>()
arrayList.add("x")
val deque = ArrayDeque<Int>()
deque.addFirst(1)
deque.addLast(2)

getOrPut para acumular en un Map

getOrPut devuelve un valor existente o inserta un valor predeterminado y lo devuelve; resulta ideal para agrupar elementos.
val groups = mutableMapOf<String, MutableList<Int>>()
for (i in 1..6) {
    val key = if (i % 2 == 0) "even" else "odd"
    groups.getOrPut(key) { mutableListOf() }.add(i)
}
println(groups)

Ordenar listas mutables

sort y sortWith ordenan las listas mutables en su lugar.
val nums = mutableListOf(3, 1, 4, 1, 5, 9)
nums.sort()
println(nums)  // [1, 1, 3, 4, 5, 9]
nums.sortDescending()
println(nums)  // [9, 5, 4, 3, 1, 1]

Comprobación rápida

¿Qué función crea una List de solo lectura utilizando un creador mutable dentro de una lambda?

Resumen

mutableListOf/SetOf/MapOf para colecciones mutables. add, remove, put, clear y replaceAll para realizar modificaciones. buildList/Map/Set para obtener resultados inmutables y claros a partir de una construcción mutable. A continuación: ¡acceder a los elementos de forma segura!

Preguntas frecuentes

¿La lección «mutableListOf, mutableMapOf: constructores mutables» es gratis?

Sí — el texto completo de «mutableListOf, mutableMapOf: constructores mutables» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Kotlin Academy, actualiza a CoddyKit PRO. El curso de Kotlin Academy incluye 4 lecciones en total.

¿Qué aprenderé en «mutableListOf, mutableMapOf: constructores mutables»?

Cree colecciones mutables y modifíquelas de forma segura. Practicas Kotlin Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Kotlin Academy?

No se requiere experiencia previa. Kotlin Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 2 de 4.

¿Cuánto tiempo toma la lección «mutableListOf, mutableMapOf: constructores mutables»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Kotlin Academy?

Sí. Cada lección de Kotlin Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. listOf, setOf, mapOf: colecciones de solo lectura
  2. mutableListOf, mutableMapOf: constructores mutables
  3. Acceso a elementos: get, first, last, getOrNull
  4. Iterar y transformar colecciones con la biblioteca estándar
← Volver a Kotlin Academy