Scala Koleksiyonları - Tarama Yöntemi

scan () yöntemi TraversableLike özelliğinin bir üyesidir, katlama yöntemine benzer, ancak koleksiyonun her öğesine bir işlem uygulamak ve bir koleksiyon döndürmek için kullanılır.

Sözdizimi

Aşağıda, katlama yönteminin sözdizimi verilmiştir.

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

Burada, tarama yöntemi bir parametre olarak ilişkili ikili operatör işlevini alır. Bu yöntem, sonuç olarak güncellenmiş koleksiyonu döndürür. İlk girişi başlangıç ​​değeri olarak ve ikinci girişi bir fonksiyon olarak kabul eder.

Kullanım

Aşağıda, tarama yönteminin nasıl kullanılacağını gösteren örnek bir program bulunmaktadır -

Misal

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

Burada tarama fonksiyonuna başlangıç ​​değeri olarak 0'ı geçtik ve ardından tüm değerler eklendi. Yukarıdaki programı şuraya kaydedin:Demo.scala. Bu programı derlemek ve çalıştırmak için aşağıdaki komutlar kullanılır.

Komut

\>scalac Demo.scala
\>scala Demo

Çıktı

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