Коллекции Scala - метод складывания
Метод fold () является членом трейта TraversableOnce, он используется для сворачивания элементов коллекций.
Синтаксис
Ниже приводится синтаксис метода сворачивания.
def fold[A1 >: A](z: A1)(op: (A1, A1) ? A1): A1
Здесь метод fold принимает в качестве параметра функцию ассоциативного бинарного оператора. Этот метод возвращает результат как значение. Он рассматривает первый ввод как начальное значение, а второй ввод как функцию (которая принимает накопленное значение и текущий элемент как ввод).
Применение
Ниже приведен пример программы, показывающей, как использовать метод складывания -
пример
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)
}
}
Здесь мы передали 0 в качестве начального значения для функции сворачивания, а затем все значения добавлены. Сохраните указанную выше программу вDemo.scala. Следующие команды используются для компиляции и выполнения этой программы.
Команда
\>scalac Demo.scala
\>scala Demo
Вывод
10