Collections
ArrayBuffer
ArrayBuffer(动态数组) 是mutable 类型,可动态变化其内容。
常用操作
//import relative pakage
import sacla.collection.mutable.ArrayBuffer
//声明AarryBuffer
val intName = ArrayBuffer[Int]()
// 给ArrayBuffer 增加元素
intName += 1 // intName.type = ArrayBuffer(1)
intName -= 1 // intName.type = ArrayBuffer()
intName ++= List(7,8,9) // intName.type = ArrayBuffer(7,8,9)
nums --= Array(7,9) // intName.type = ArrayBuffer(8)
// 声明同时初始化值
val arr = ArrayBuffer(1,2)
//
同样也有类似java or python 的类方法
// 初始化
val nums = ArrayBuffer(1,2,3,4,5)
val nums = ArrayBuffer.range(1,6)
//追加操作append
nums.append(6,7) // nums.type = ArrayBuffer(1,2,3,4,5,6,7)
nums.append(Seq(8,9)) // nums.type = ArrayBuffer(1,2,3,4,5,6,7,8,9)
插入insert or 前插prepend
val nums = ArrayBuffer(7, 11)
nums.insert(1,8) // nums.type = ArrayBuffer(7,8,11)
nums.insertAll(2, Vector(9,10)) // nums.type = ArrayBuffer(7,8,9,10,11)
nums.prepend(5,6) // nums.type = ArrayBuffer(5,6,7,8,9,10,11)
nums.prependAll(Array(1,2,3,4)) // nums.type = ArrayBuffer(1,2,3,4,5,6,7,8,9,10,11)
删除操作remove 和 trimStart、trimSEnd
val str = ArrayBuffer.range('a', 'j')// ArrayBuffer('a', 'b','c','d','e','f','g','h','i')
//删除下标为0和2位置的元素
nums.remove(0,2) // ArrayBuffer('b','d','e','f','g','h','i')
//删除前两位的元素
nums.trimStart(2) // ArrayBuffer('e','f','g','h','i')
//删除后两位的元素
nums.trimEnd(2) // ArrayBuffer('e','f','g')