1、定义数组
数组创建方式一:
var a1
:Array
[String] = new Array
[String](3)
a1
(0)="Jason"
a1
(1)="Marie"
a1
(2)="Jimmy"
注意:1、泛型使用方括号;2、数组元素访问使用圆括号。
数组创建方式二:
var a2
=Array
("Jason","Marie","Jimmy")
数组创建方式三:区间数组
var a3
=Array
.range
(1,10)
var a3
=Array
.range
(1,10,2)
2、数组遍历
def main
(args
: Array
[String]): Unit = {
val a
=Array
(8,6,5,7,1)
for (elem
<- a
){
println
(elem
)
}
for (i
<- 0 until a
.length
) {
println
(a
(i
))
}
}
3、元组定义
元组与数组类似,但是数组中所有的元素必须是同一种类型,而元组则可以包含不同类型的元素。最多支持22个元素 (Tuple1~Tuple22)使用下划线“_"访问元素,“_1"表示第一个元素
var tupleDemo
=("hello",2,5,8,"world",'a')
println
(tupleDemo
)
println
(tupleDemo
._1
)
println
(tupleDemo
._2
)
println
(tupleDemo
._3
)
println
(tupleDemo
._4
)
println
(tupleDemo
._5
)
println
(tupleDemo
._6
)
tupleDemo
.productIterator
.foreach
{x
=> println
("value:"+x
)}
var tp2
= new Tuple3
("Mike", "123 ABC street", 58)
def mike
= "Mike" -> 5
println
(mike
)
println
(mike
.getClass
)
def mike
= "Mike" -> 5 -> 6
println
(mike
)
mike
.getClass
4、元组模式匹配
可以通过模式匹配来获取元组中的值并赋予对应的变量:
val tp1
=("mike","andemen",18)
val(name
, address
, age
) = tp1
println
(name
)
println
(address
)
println
(age
)
如果某些位置不需要赋值,则可以使用下划线代替:
val tp1
=("mike","andemen",18)
val (name
,_
,_
)=tp1
println
(name
)