数组相关操作

1.定长数组

2.变长数组:数组缓冲

3.遍历数组和数组缓冲

4.数组转换

5.常用算法

6.多维数组

7.与Java的互操作

1.定长数组

方式一:

方式二:以下长度为2的Array[String]类型是推断出来的 

2.变长数组:数组缓冲

准备一个空的数组缓冲

用+=在尾端添加元素

 

在尾端添加多个元素,用括号包起来

 

用++=操作符追加任何集合

移除最后5个元素

 

在下标2之前插入6

插入任意多的元素

删除指定下标元素

 

删除指定下标后的多少个元素

有时候你需要构建一个Array,但不知道最终要装多上元素。先建一个数组缓冲,然后调用:

 

反过来,调用a.toBuffer可以将一个数组a转换为数组缓冲

 

 3.遍历数组和数组缓冲

for循环遍历数组

若想每两个元素一跳

 

若想从数组尾端开始遍历

 

直接访问数组元素,不用下标

 

4.数组转换

数组转换不会修改原数组,而是产生一个全新的数组。

5.常用算法

排序:默认升序(注意,对ArrayBuffer排序,原来的数组没有被改变)

自定义升序或者降序:

可以直接对一个数组排序,但不能对数组缓冲排序:

如果想要显示数组或数组缓冲的内容,可以用mkString方法。

6.多维数组

创建并且访问多维数组:

创建不规则的数组:

7.与Java的互操作

举例,java.lang.ProcessBuilder类中有一个以List<String>为参数的构造器。演示,从scala到java的转换:

 反过来,当java方法返回java.util.List时,我们可以让它自动转换为一个Buffer:

 

原文地址:https://www.cnblogs.com/sunnyDream/p/8000461.html