数组
Array-数组
//伴生对象创建数组
var a1=Array(1,2,3,4,5)
//创建长度为5的数组,所有值都是0
var a2=new Array[Int](5)
//获取长度
a1.length
a2.size
//修改
a1(0) = -1
a1.update(1,-2)
//遍历数组
for(i <- a1) println(i)
Range-区间
产生的是一个只读区间和数组类似,但是内容不可以修改。
//创建区间
var r1=new Range(0,10,3)//0 3 6 9
var r2=0 to 10 by 3
var r3=0 until 10 by 3
//取值
r1(2)// 6
r1(2) = 12// 错误 只读,不允许更改
//遍历range
for(i <- r1) println(i)
//长度大小
r1.size
r1.length
Vector-向量
//创建向量
var v1=Vector(1,2,3)
var v2=for(i <- 0 to 10 by 3) yield i
//取值
v1(0) // 1
//不支持修改
v1(0) = 10 //错误
//遍历Vector
for(i <- v1) println(i)
//长度大小
v1.size
v1.length
Iterator-游标
不可以根据下标读取,且只能遍历一次
//创建一个游标
var it=Iterator(1,2,3)
//仅仅只能遍历一次
for(i <- it) println(i)
//计算大小 之后将集合清空
it.size
it.length
//判断是否为空
val flag=it.isEmpty
总结:
Array(数组): 可以遍历、可以修改
Range(区间): 产生的是一个只读区间,数值不可以修改
Vector(坐标|向量) 和Range类似,数值不可以修改
Iterator(游标) 不可以取值,只能遍历一次,计算长度后,会清空。
集合
List-不可变集合
//创建集合
var list = List(1,2,5,3,2)
//添加元素 产生新的集合数组 不会修改原始的集合
list.