说明
- 不可变和可变指的是,当数组进行增删操作(长度发生变化)时,不可变数组会返回新的数组,原数组不会变化。可变数组会在原数组上进行修改。
创建数组
val arr: Array[Int] = new Array[Int](5)
val arr2: Array[Int] = Array(1, 2, 3, 4, 5)
修改数组指定位置的值
arr(1) = 20
arr.update(1,30)
数组遍历
1.普通for循环
for (i <- 0 to arr2.length - 1) {
println(arr2(i))
}
for (elem: Int <- arr2) {
println(elem)
}
2.迭代器
val it: Iterator[Int] = arr2.iterator
while (it.hasNext) {
println(it.next())
}
3.增强for循环
arr2.foreach((x:Int) => {
println(x)})
arr2.foreach(println(_))
arr2.foreach(println)
4.按照指定分隔符遍历
println(arr2.mkString(","))
添加元素
在尾部添加元素
val arr3: Array[Int] = arr :+ 20
println(arr3.mkString(","))
在头部添加元素
- 需要注意的是**,当运算符有冒号,且冒号在右侧时,是从右向左执行**。所以+:是从右向左执行的,所以+要和元素在同一侧。
val arr4: Array[Int] = 10 +: arr
println(arr4.mkString(","))
删除元素
val arr5: Array[Int] = arr4.drop(3)
println(arr5.mkString(","))