Bộ sưu tập Scala - Phương pháp quét

phương thức scan () là một thành viên của đặc điểm TraversableLike, nó tương tự như phương thức gấp nhưng được sử dụng để áp dụng một phép toán trên từng phần tử của tập hợp và trả về tập hợp.

Cú pháp

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

def scan[B >: A, That](z: B)(op: (B, B) ? B)(implicit cbf: CanBuildFrom[Repr, B, That]): That

Ở đây, phương thức quét 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à tập hợp đã cập nhật. Nó coi đầu vào đầu tiên là giá trị ban đầu và đầu vào thứ hai là một hàm.

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 quét -

Thí dụ

object Demo {
   def main(args: Array[String]) = {
      val list = List(1, 2, 3 ,4)
      //apply operation to create a running total of all elements of the list
      val list1 = list.scan(0)(_ + _)
      //print list
      println(list1)      
   }
}

Ở đây chúng tôi đã chuyển 0 làm giá trị ban đầu cho hàm quét 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

List(0, 1, 3, 6, 10)