Colecciones Scala - Método de plegado
El método fold () es un miembro del rasgo TraversableOnce, se usa para colapsar elementos de colecciones.
Sintaxis
La siguiente es la sintaxis del método fold.
def fold[A1 >: A](z: A1)(op: (A1, A1) ? A1): A1
Aquí, el método de plegado toma la función de operador binario asociativo como parámetro. Este método devuelve el resultado como valor. Considera la primera entrada como valor inicial y la segunda entrada como una función (que toma el valor acumulado y el artículo actual como entrada).
Uso
A continuación se muestra un programa de ejemplo que muestra cómo utilizar el método de plegado:
Ejemplo
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.fold(0)(_ + _)
//print result
println(result)
}
}
Aquí hemos pasado 0 como valor inicial a la función de plegado y luego se agregan todos los valores. Guarde el programa anterior enDemo.scala. Los siguientes comandos se utilizan para compilar y ejecutar este programa.
Mando
\>scalac Demo.scala
\>scala Demo
Salida
10