0


scala数组

文章目录

数组

定长数组

Scala数组的声明,若数组长度固定,则使用

Array

;若数组长度可能有变化,则使用

ArrayBuffer

定长数组声明的语法格式为:

var z:Array[String]=new Array[String](3)var z =new Array[String](3)val str =new Array{"Hello","World"}

其中,

z

声明一个字符串类型的数组,数组长度为3,可存储3个元素。我们可以为每个元素设置值,并通过索引来访问每个元素,如下所示:

z(0)="Bing"; z(1)="Google"; z(4/2)="Baidu"

最后一个元素的索引使用了表达式

4/2

作为索引,类似于

z(2) = "Google"

。我们也可以使用以下方式来定义一个数组:

var z = Array("Bing","Google","Baidu")

访问数组

我们访问数组

s

的第一个值,并将其改为

Hi
s(0)="Hi"

变长数组:数组缓冲

对于长度需要变化的数组,Scala中使用的数据结构为

ArrayBuffer

声明一个空的变长数组,用于存放整数。其中用

+=

来在数组尾部添加元素,若添加多个元素,则需要用

()

括起,可以用

++=

操作符追加任意集合,或者使用函数对数组进行操作。

在以下代码中

a.trimEnd(5)

代表移除了数组的最后五个元素;

a.insert(2,"6")

代表在下标2的元素之前插入元素

6

,也可以插入任意多的元素,插入的元素从第二个参数开始编写即可;

a.remove(2,3)

代表在下标

2

的元素之前移除

3

个元素。

importscala.collection.mutable.ArrayBuffer
val a = ArrayBuffer[Int]() 
a +=6
println(a)
a +=("1","2","3","4","5")
println(a)
a ++= ArrayBuffer("8","13","21")
println(a)
a.trimEnd(5)
println(a)
a.insert(2,"6")
println(a)
a.remove(2,3)
println(a)

数组转换

在不确定元素个数时构建数组

b

时,需要先构建一个变长数组,然后调用

a.toArray

;反过来,调用

a.toBuffer

可以将一个数组转换成一个变长数组。

多维数组

多维数组一个数组中的值可以是另一个数组,另一个数组的值也可以是一个数组。矩阵与表格是我们常见的二维数组。二维数组定义为:

var arr = ofDim[Int](3,3)

本文转载自: https://blog.csdn.net/weixin_44018458/article/details/128742233
版权归原作者 码上行舟 所有, 如有侵权,请联系我们删除。

“scala数组”的评论:

还没有评论