11.2.2 变长数组
变长数组是指: 数组的长度根据需要来变化. 类似于 Java 中的 ArrayList
Scala 中等效的数据结构是ArrayBuffer
package com.atguigu.day11.arr
import scala.collection.mutable.ArrayBuffer
object ArrayDemo2 {
def main(args: Array[String]): Unit = {
// 创建数组缓冲方式1: new 的方式, 空的缓冲数组
val arr1 = new ArrayBuffer[Int]()
// 创建数组缓冲方式2
//var arr2 = ArrayBuffer[Int]
// 用 += 的方式在尾端添加元素
arr1 += 1
// 用 += 同时添加多个元素
arr1 +=(2, 4, 5)
println(arr1)
// 使用 ++= 可以追加任何的集合
arr1 ++= Array(100, 200, 300)
println(arr1)
// 移除最后 2个 元素
arr1.trimEnd(2) // 在数组的末尾添加和移除元素是一个高效的操作
println(arr1)
// 也可以在认为位置添加,是删除元素, 但是不高效! 因为后面的所有元素都需要向前或者向后移动
// 从下标为 2 的位置插入元素 60
arr1.insert(2, 60)
println(arr1)
// 从下标为 2 的位置开始插入 70, 80. 理论上可以插入任意多的元素
arr1.insert(2, 70, 80)
println(arr1)
// 移除元素 : 移除下标为 1 的元素
arr1.remove(1)
println(arr1)
// 从下标为 1 的位置开始移除 3 个元素
arr1.remove(1, 3)
println(arr1)
// 数组缓冲转换成数组:
val arr: Array[Int] = arr1.toArray
}
}