1.Array
在scala中,Array代表的含义与java中类似,也是长度不可改变的数组。此外,由于scala与java都是运行在JVM中,双方可以相互调用,
因此Scala数组的底层实际上是Java数组。例如字符串数组在底层就是Java的String[] ,整数数组在底层就是Java的Int[].
在创建数组的时候,数据都是有值的,只是都是默认值 Int 是0 。


1.1 通过索引值进行Array赋值
语法: 数组名(索引) = 值

1.2通过索引值取值
语法: 数组名(索引)



注意: Array的长度是不可变的, 在创建的时候就已经固定好长度。
2.ArrayBuffer
在scala中,如果需要长度
可变的数组类就可以使用ArrayBuffer
但是如果想使用ArrayBuffer的话,
需要首先导入包:
import scala.collection.mutable.ArrayBuffer

2.1 ArrayBuffer添加元素
语法:
ArrayBuffer名 += 值 (添加单个值)


一次性添加多个值
语法: ArrayBuffer名 += (值, 值, 值)


加入其它的ArrayBuffer
语法 : ArrayBuffer名 ++= 其它ArrayBuffer名


删除多个元素使用
语法: 数组名 .trimEnd(个数) 从尾部开始数个数

在指定位置插入一个元素
语法: 数组名.insert(5,6) 5表示在索引位置为5 插入一个元素 6 插入单个元素

插入多个元素
语法: 数组名.insert(3,3,2,1) 第一个参数为插入位置, 之后的参数为插入的值

在指定位置移除元素
语法: 数组名.remove(1,2) 从索引为1的位置 移除2个元素(包含索引为1的元素)

3.Array和ArrayBuffer的相互转换
语法: 数组名.toArray 数组名.toBuffer


4.遍历Array和ArrayBuffer
4.1 普通遍历


4.2跳跃遍历(2,4,6...)


4.3 从尾部开始遍历 反转
语法: (0 until 数组名.length).reverse 反转


4.4增强for循环遍历
语法: for ( i <- 数组名)


5.数组常见的操作
5.1数组元素求和
语法: 数组名.sum


5.2 获取数组最大值
语法: 数组名.max


5.3对数组进行排序
语法: scala.util.Sorting.quickSort(数组名)

5.4获取数组中所有元素内容
语法: 数组名.mkString

5.5数组转换 yield
使用yield和函数式编程转换数组(通过yield构建一个新的数组)
案例:将数组a 的值的平方赋值给a2

注意:通过yield转换的数组,本身数组是什么类型那么转换好的数组也是什么类型。对于ArrayBuffer同样适用

在yield中加入if 守卫

使用函数式编程转换数组

算法案例:移除第一个负数之后的所有负数
