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)