Coleções Scala - Método FlatMap

O método flatMap () é o método do traço TraversableLike, ele pega um predicado, aplica-o a cada elemento da coleção e retorna uma nova coleção de elementos retornados pelo predicado.

Sintaxe

A seguir está a sintaxe do método flatMap.

def flatMap[B](f: (A) ? GenTraversableOnce[B]): TraversableOnce[B]

Aqui, f: (A)? GenTraversableOnce [B] é um predicado ou condição a ser aplicada em cada elemento da coleção. Este método retorna o elemento Option contendo o elemento correspondente do iterador que satisfaz a condição fornecida.

Uso

Abaixo está um exemplo de programa mostrando como usar o método flatMap -

Exemplo

object Demo {
   def main(args: Array[String]) = {
      val list = List(1, 5, 10)
      //apply operation
      val result = list.flatMap{x => List(x,x+1)}
      //print result
      println(result)      
   }
}

Salve o programa acima em Demo.scala. Os seguintes comandos são usados ​​para compilar e executar este programa.

Comando

\>scalac Demo.scala
\>scala Demo

Resultado

List(1, 2, 5, 6, 10, 11)