Colecciones Scala - ArrayBuffer
Scala proporciona una estructura de datos, la ArrayBuffer, que puede cambiar de tamaño cuando el tamaño inicial se queda corto. Como la matriz tiene un tamaño fijo y no se pueden ocupar más elementos en una matriz, ArrayBuffer es una alternativa a la matriz donde el tamaño es flexible.
Internamente, ArrayBuffer mantiene una matriz de tamaño actual para almacenar elementos. Cuando se agrega un nuevo elemento, se verifica el tamaño. En caso de que la matriz subyacente esté llena, se crea una nueva matriz más grande y todos los elementos se copian en una matriz más grande.
Declaración de variables ArrayBuffer
La siguiente es la sintaxis para declarar una variable ArrayBuffer.
Sintaxis
var z = ArrayBuffer[String]()
Aquí, z se declara como un búfer de matriz de cadenas que inicialmente está vacío. Los valores se pueden agregar usando comandos como los siguientes:
Mando
z += "Zara";
z += "Nuha";
z += "Ayan";
Procesamiento ArrayBuffer
A continuación se muestra un programa de ejemplo que muestra cómo crear, inicializar y procesar ArrayBuffer:
Ejemplo
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));
}
}
Guarde el programa anterior en Demo.scala. Los siguientes comandos se utilizan para compilar y ejecutar este programa.
Mando
\>scalac Demo.scala
\>scala Demo
Salida
ArrayBuffer(Zara, Nuha, Ayan)
ArrayBuffer(Zara, Nuha, Ayan, Welcome, To, Tutorialspoint)
Nuha