在Scala中,数组是不可变的,并且包含同质元素,即数组的大小不能更改,并且数组的所有元素都包含相同的元素。
ArrayBuffer是一个特殊的类,用于创建可变数组。
要使用ArrayBuffer,我们将导入
scala.collection.mutable.ArrayBuffer
语法:
在Scala中创建ArrayBuffer的语法,
    var arrayBuffer = ArrayBuffer("element1", "element2", ...)import scala.collection.mutable.ArrayBuffer
object MyClass {
    def main(args: Array[String]) {
        println("我的自行车是 ")
        val bikes = ArrayBuffer("ThunderBird 350", "YRF R3")
        for(i <- 0 to bikes.length-1)
            println(bikes(i))
        // 添加一个字符串 
        bikes += "iron 883"
        println("After adding new bike to my collection")
        for(i <- 0 to bikes.length-1)
            println(bikes(i))
        
    }
}输出结果
我的自行车是 ThunderBird 350 YRF R3 After adding new bike to my collection ThunderBird 350 YRF R3 iron 883
您可以使用+ =运算符并使用方法将新element(s)的添加到ArrayBuffer中append()。
import scala.collection.mutable.ArrayBuffer
object MyClass {
    def main(args: Array[String]) {
        println("我的自行车是 ")
        val bikes = ArrayBuffer[String]()
        
        bikes += "ThunderBird 350"
        bikes += ("YRF R3", "Iron 883")
        bikes.append("BMW S1000 RR")
        
        for(i <- 0 to bikes.length-1)
            println(bikes(i))
    }
}输出结果
我的自行车是 ThunderBird 350 YRF R3 Iron 883 BMW S1000 RR
您还可以使用-=运算符和ArrayBuffer删除ArrayBuffer的元素。remove()方法。
语法:
使用-=运算符删除一个元素
ArrayBuffer -= (arrayElement)
使用-=运算符删除多个元素
ArrayBuffer -= (arrayElement1, arrayElement2, ...)
使用remove方法删除元素
ArrayBuffer -= (arrayElementposition)
import scala.collection.mutable.ArrayBuffer
object MyClass {
    def main(args: Array[String]) {
        val bikes = ArrayBuffer("ThunderBird 350", "YRF R3", "Iron 883", "BMW S1000 RR", "BMW GSA")
        println("我的自行车是 ")
        for(i <- 0 to bikes.length-1)
            println(bikes(i))
            
        println("移除元素...")   
        bikes -= "YRF R3"
        bikes -= ("Iron 883", "BMW GSA")
        bikes.remove(1)
        for(i <- 0 to bikes.length-1)
            println(bikes(i))
    }
}输出结果
我的自行车是 ThunderBird 350 YRF R3 Iron 883 BMW S1000 RR BMW GSA 移除元素... ThunderBird 350
这些是对ArrayBuffer的一些操作,这是一个创建Array可变变量的特殊类。