Kolekcje Scala - ArrayBuffer

Scala zapewnia strukturę danych, plik ArrayBuffer, który może zmienić rozmiar, gdy rozmiar początkowy jest za mały. Ponieważ tablica ma stały rozmiar i nie można w niej zajmować więcej elementów, ArrayBuffer jest alternatywą dla tablicy, w której rozmiar jest elastyczny.

Wewnętrznie ArrayBuffer przechowuje tablicę o bieżącym rozmiarze do przechowywania elementów. Po dodaniu nowego elementu sprawdzany jest rozmiar. W przypadku, gdy podstawowa tablica jest pełna, tworzona jest nowa, większa tablica i wszystkie elementy są kopiowane do większej tablicy.

Deklarowanie zmiennych ArrayBuffer

Poniżej przedstawiono składnię deklarowania zmiennej ArrayBuffer.

Składnia

var z = ArrayBuffer[String]()

Tutaj z jest zadeklarowane jako bufor tablicowy ciągów, który jest początkowo pusty. Wartości można dodawać za pomocą poleceń takich jak następujące -

Komenda

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

Przetwarzanie ArrayBuffer

Poniżej znajduje się przykładowy program pokazujący, jak tworzyć, inicjować i przetwarzać ArrayBuffer -

Przykład

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

Zapisz powyższy program w formacie Demo.scala. Poniższe polecenia służą do kompilowania i wykonywania tego programu.

Komenda

\>scalac Demo.scala
\>scala Demo

Wynik

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