#Kata map, flatten y flatMap en Scala.

En este post te voy a explicar las diferencias entre map, flatten y flatMap en Scala.

¿Qué es map?

Map es un método que te permite aplicar una transformación a cada elemento de una colección, es una high-order function. Map regresará una nueva colección con la transformación aplicada a todos los elementos.

¿Qué es flatten?

Flatten es un método que te permite juntar dos colecciones en una sola.  Flatten recibe varias colecciones y retorna una nueva con todos los elementos.

Este método no hace una unión. Si tienes elementos repetidos, estos se incluirán en la nueva colección.

 

¿Qué es flatMap?

FlatMap es un wrapper que ejecuta Map y luego FlatMap. A diferencia de Map, FlatMap puede generar una colección con mayor o menor número de elementos.

 

 

Gustavo Sánchez