คอลเลกชัน Scala - ArrayBuffer

Scala จัดเตรียมโครงสร้างข้อมูลไฟล์ ArrayBufferซึ่งสามารถเปลี่ยนขนาดได้เมื่อขนาดเริ่มต้นสั้นลง เนื่องจากอาร์เรย์มีขนาดฟิกซ์และไม่สามารถใช้องค์ประกอบอื่น ๆ ในอาร์เรย์ได้ ArrayBuffer จึงเป็นอีกทางเลือกหนึ่งของอาร์เรย์ที่ขนาดมีความยืดหยุ่น

ArrayBuffer ภายในจะรักษาอาร์เรย์ของขนาดปัจจุบันเพื่อจัดเก็บองค์ประกอบ เมื่อมีการเพิ่มองค์ประกอบใหม่ขนาดจะถูกตรวจสอบ ในกรณีที่อาร์เรย์พื้นฐานเต็มแล้วจะมีการสร้างอาร์เรย์ขนาดใหญ่ขึ้นใหม่และองค์ประกอบทั้งหมดจะถูกคัดลอกไปยังอาร์เรย์ที่มีขนาดใหญ่ขึ้น

การประกาศตัวแปร ArrayBuffer

ต่อไปนี้เป็นไวยากรณ์สำหรับการประกาศตัวแปร ArrayBuffer

ไวยากรณ์

var z = ArrayBuffer[String]()

ที่นี่ z ถูกประกาศว่าเป็นอาร์เรย์บัฟเฟอร์ของ Strings ซึ่งในตอนแรกว่างเปล่า สามารถเพิ่มค่าได้โดยใช้คำสั่งดังต่อไปนี้ -

คำสั่ง

z += "Zara";
z += "Nuha";
z += "Ayan";

กำลังประมวลผล ArrayBuffer

ด้านล่างนี้เป็นโปรแกรมตัวอย่างในการแสดงวิธีสร้างเริ่มต้นและประมวลผล ArrayBuffer -

ตัวอย่าง

import scala.collection.mutable.ArrayBuffer 
object Demo {
   def main(args: Array[String]) = {
      var myList = ArrayBuffer("Zara","Nuha","Ayan")
      println(myList);
      // Add an element
      myList += "Welcome";
      // Add two element
      myList += ("To", "Tutorialspoint");
      println(myList);
      // Remove an element
      myList -= "Welcome";
      // print second element
      println(myList(1));
   }
}

บันทึกโปรแกรมข้างต้นใน Demo.scala. คำสั่งต่อไปนี้ใช้เพื่อคอมไพล์และรันโปรแกรมนี้

คำสั่ง

\>scalac Demo.scala
\>scala Demo

เอาต์พุต

ArrayBuffer(Zara, Nuha, Ayan)
ArrayBuffer(Zara, Nuha, Ayan, Welcome, To, Tutorialspoint)
Nuha