Scala中的Array

32 阅读2分钟

(一)Array的定义

Array 是一种在 Scala 中用于存储固定大小、相同类型元素的数据结构。它在内存中是连续存储的,这使得访问元素的速度非常快。

类型有两种:Array表示长度不可变的数组 和 ArrayBuffer表示长度可变的数组

(二)不可变数组

Array表示长度不可变的数组,一旦定义之后,不能再增加,删除元素。

我们主要学习它的:创建数组,访问元素,填充Array.range

1. 创建不可变数组

2. 访问元素: 注意不要越界。

3. 获取数组的长度:arr.length:获取数组的长度。

/*
* Array:可变,不可变
* 1.不可变 scala.Array
* 2.可变 scala.collection,mutable,ArrayBuffer
*
* */
object array01 {
  def main(args: Array[String]): Unit = {
    val arr1 = scala.Array(1,2,3)
    // arr1 += 4; 不可变的数组 不能添加

    val arr2 = scala.collection.mutable.ArrayBuffer(1,2,3)
    arr2 += 4 // 可变数组 可以添加元素

    println(arr2)
  }

}
//运行结果:
ArrayBuffer(1, 2, 3, 4)

(三)可变数组

Array表示长度不可变的数组,一旦定义之后,不能再增加,删除元素。

1. 添加元素

(1) 添加一个元素;+= 元素

(2) 添加多个元素;+=(元素1, 元素2)

2. 删除元素

(1) 删除一个元素: -= 元素

(2) 删除多个元素: -= (元素1, 元素2)

(3) 删除指定位置的元素: remove(下标)

(4) 删除指定位置的多个元素:remove(下标起点,下标终点)

3.获取制定下标的元素

//arr2(0) 下标为0 数组的第一个元素
println(arr2(0))
/*
* Array:可变,不可变
* 1.不可变 scala.Array
* 2.可变 scala.collection,mutable,ArrayBuffer
*
* 常见方法:
* 1.添加
* 2.删除
* 3.获取制定下标的元素
* */
object array01 {
  def main(args: Array[String]): Unit = {
    val arr2 = scala.collection.mutable.ArrayBuffer(1,2,3)
    //1.添加
    arr2 += (4,5) // 可变数组 可以添加元素

    //2.删除
    arr2 -= 2

    //3.获取制定下标的元素
    //arr2(0) 下标为0 数组的第一个元素
    println(arr2(0))

    //4.修改
    arr2(0) = 100

    //5.遍历
    arr2.foreach(ele => println(ele))

    println(arr2)
  }

}
//运行结果:
1
100
3
4
5
ArrayBuffer(100, 3, 4, 5)