Bộ sưu tập Scala - Phương pháp gấp

Phương thức fold () là một thành viên của đặc điểm TraversableOnce, nó được sử dụng để thu gọn các phần tử của bộ sưu tập.

Cú pháp

Sau đây là cú pháp của phương thức gấp.

def fold[A1 >: A](z: A1)(op: (A1, A1) ? A1): A1

Ở đây, phương thức gấp lấy hàm toán tử nhị phân kết hợp làm tham số. Phương thức này trả về kết quả là giá trị. Nó coi đầu vào đầu tiên là giá trị ban đầu và đầu vào thứ hai là một hàm (lấy giá trị tích lũy và mục hiện tại làm đầu vào).

Sử dụng

Dưới đây là một chương trình ví dụ về cách sử dụng phương pháp gấp -

Thí dụ

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)      
   }
}

Ở đây chúng tôi đã chuyển 0 làm giá trị ban đầu cho hàm gấp và sau đó tất cả các giá trị được thêm vào. Lưu chương trình trên vàoDemo.scala. Các lệnh sau được sử dụng để biên dịch và thực thi chương trình này.

Chỉ huy

\>scalac Demo.scala
\>scala Demo

Đầu ra

10