Scala Collections - FoldRight Method

foldRight () method เป็นสมาชิกของ TraversableOnce trait ซึ่งใช้เพื่อยุบองค์ประกอบของคอลเลกชัน มันนำทางองค์ประกอบจากขวาไปซ้ายตามลำดับ

ไวยากรณ์

ต่อไปนี้เป็นไวยากรณ์ของเมธอด foldRight

def foldRight[B](z: B)(op: (B, A) ? B): B

วิธีการพับใช้ฟังก์ชันตัวดำเนินการไบนารีที่เชื่อมโยงเป็นพารามิเตอร์ วิธีนี้ส่งคืนค่าผลลัพธ์

การใช้งาน

ด้านล่างนี้คือโปรแกรมตัวอย่างการแสดงวิธีใช้เมธอด foldRight -

ตัวอย่าง

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.foldRight(0)(_ + _)
      //print result
      println(result)      
   }
}

ที่นี่เราได้ส่ง 0 เป็นค่าเริ่มต้นไปยังฟังก์ชัน foldRight จากนั้นค่าทั้งหมดจะถูกเพิ่ม บันทึกโปรแกรมข้างต้นในDemo.scala. คำสั่งต่อไปนี้ใช้เพื่อคอมไพล์และรันโปรแกรมนี้

คำสั่ง

\>scalac Demo.scala
\>scala Demo

เอาต์พุต

10