您的位置:首页 > 其它

[scala之三]数组、映射、元组

2014-12-17 23:37 302 查看
1.数组

①.定长数组,可以使用Array,当指定类型而没有初始化时,使用初始默认值初始化

val nums = new Array[Int](10)

当指定了初始值时,定义数组就不需要new了
val s = Array("hello","world")

访问数组元素时,使用(),即apply方法
s(0)="good"
②.变长数组,使用ArrayBuffer,其定义与定长数组一致

val b = new ArrayBuffer[Int]()
//在尾端添加元素
b += 1
//尾端加入多个元素
b += (1,2,3,4)
//尾端加入一个数组
b ++= Array(2,3,4)
//尾端删除元素
b.trimEnd(4)其他位置也可以进行数据增加和删除,但不是显得很高效。
③.数组遍历与转换

遍历一般采用for循环模式;转换一般涉及守卫、for推导式,但结果是一个新数组。

2.映射和元组

映射是键值对偶的集合。

元组是n个对象的聚集,并不一定是同种类型;对偶不过是n=2的元组。

①映射

//构建映射

val scores = Map("Alice"->10,"Bob"->3)  //或者 val scores = Map(("Alice",10),("Bob",3))

//获取值

val bobScore = scores("Bob")

//判断非空

val bobScore = if((scores.contains("Bob")) scores("Bob") else 0 // 或者简写 val bobScore = scores.getOrElse("Bob",0)

②.元组

tuple是不同类型的集合

//定义
val t = (1,2.0,"Bob")

//访问其元素,脚标从1开始,使用_1,_2等等
val e1 = t._1
val e2 = t._2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: