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:

 数组相关操作

 

相关文章:

  • 2022-12-23
  • 2022-02-27
  • 2021-12-22
  • 2021-04-06
  • 2022-12-23
  • 2022-01-09
猜你喜欢
  • 2021-07-16
  • 2021-06-19
  • 2022-12-23
  • 2022-02-18
  • 2021-09-25
  • 2021-08-31
  • 2022-02-05
相关资源
相似解决方案