AD

¿Ya dominas lo básico? Un curso estructurado de Kotlin es la vía rápida para dar el salto.

Ver cursos de Kotlin en Udemy

Enlace de afiliado. No te cuesta nada extra.

🎯Lecciones de Kotlin
Lección 42 / 68

Aplanar una lista

En esta lección convertirás una lista con listas dentro en una lista plana.

flatMap { it } aplica la transformación a cada elemento y aplana un nivel de anidamiento. Para el caso simple existe también flatten().

El código de ejemplo aplana una lista de listas de números.

Ese «un nivel» es lo que hay que retener: con tres niveles hay que aplicarlo dos veces. Y conviene saber que flatten() es más directo cuando no hay ninguna transformación que hacer — flatMap { it } dice lo mismo dando un rodeo.

El caso más frecuente en la práctica es el resultado de un map en el que cada elemento produce varios: te queda una lista de listas, y flatMap lo resuelve en la misma pasada.

Cuando la estructura anidada significa algo —filas de una tabla, agrupaciones por categoría— aplanarla destruye esa información sin dejar rastro. Merece la pena preguntarse si lo que quieres es aplanar o recorrer manteniendo los grupos, para lo que existe groupBy en el sentido contrario.

📖 Código de referencia
✍️ Tu código
Escribe tu código y pulsa «Ejecutar»

🧪 Este sitio no puede compilar ni ejecutar Kotlin directamente, así que comprueba al instante si lo que escribiste coincide con el código de referencia (la corrección ocurre por completo en tu navegador; no se envía nada a ningún servidor).

🔗 El mismo tema en otros lenguajes

Mira cómo se escribe lo mismo en otro lenguaje.

Espacio publicitario (banner)
Espacio publicitario (en el artículo)