O método foldRight () é um membro do traço TraversableOnce, é usado para recolher elementos de coleções. Ele navega pelos elementos da ordem da direita para a esquerda.
Sintaxe
A seguir está a sintaxe do método foldRight.
def foldRight[B](z: B)(op: (B, A) ? B): B
Aqui, o método fold usa a função do operador binário associativo como parâmetro. Este método retorna o valor resultante.
Uso
Abaixo está um exemplo de programa mostrando como usar o método foldRight -
Exemplo
object Demo {
def main(args: Array[String]) = {
val list = List(1, 2, 3 ,4)
//apply operation to get sum of all elements of the list
val result = list.foldRight(0)(_ + _)
//print result
println(result)
}
}
Aqui, passamos 0 como valor inicial para a função foldRight e todos os valores são adicionados. Salve o programa acima emDemo.scala. Os seguintes comandos são usados para compilar e executar este programa.
Comando
\>scalac Demo.scala
\>scala Demo
Resultado
10