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