Coleções Scala - Método de Partição

O método partition () é um membro do traço TraversableLike, ele é usado para executar um método predicado em cada elemento de uma coleção. Ele retorna duas coleções, uma coleção é de elementos que satisfazem uma determinada função de predicado e outra coleção é de elementos que não satisfazem a função de predicado fornecida.

Sintaxe

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

def partition(p: (A) ? Boolean): (Repr, Repr)

Aqui, o método de partição tem uma função pré-mediada como parâmetro. Este método retorna as coleções.

Uso

Abaixo está um programa de exemplo mostrando como usar o método de partição -

Exemplo

object Demo {
   def main(args: Array[String]) = {
      val list = List(1, 2, 3, 4, 5, 6, 7)
      //apply operation to get twice of each element.
      val (result1, result2) = list.partition(x=>{x % 3 == 0})
      //print result
      println(result1)
      println(result2)      
   }
}

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(3, 6)
List(1, 2, 4, 5, 7)