Scala坑四(映射和元组)

1.摘要

创建、查询和遍历映射都有十分易用的语法

要从可变和不可变的映射中选择

默认情况下得到的是一个哈希映射,不过可以指明要树形映射

可以再Scala映射和Java映射之间来回切换

元组可以用来聚集值

2.构造映射

映射是对偶的集合,即两个值构成的组

不变映射

val s = Map("A" -> 10, "b" -> 12, "c" ->  13) 一个不可变的Map[String,Int]

一个空的映射

val s = new scala.collection.mutale.HashMap[String,Int]

3.获取映射中的值

返回的是一个Option类

val b = s("b")

如果没有值就会抛出异常

val b = s.getOrElse("b",0) 没有值就返回0

4.更新映射中的值

s("b") = 23

若是可变的map 使用 s("d") = 98 增加新的对偶

s += ("b" -> 32,"c" -> 43)

移除  s -= “a”

5.迭代映射

for( ( k, v ) <- 映射)

s.keysSet 得到的是 set("a","b","v")的集合

for(v <- s.values) println(v) 输出的是map里面的value

for( ( k, v )<- 映射) yieid ( v , k ) 翻转映射

6.元组

元组下标从1开始

映射是键/值对偶集合,对偶是元组的最简单形态 , 元组是不同类型的值得聚集

如 val t =(1,2.1, "haha") Tuple3[Int,Double,Java.lang,String]

用 ._1  ._2来访问元组

val second = t._1

使用匹配模式来获取元组的组元   val (first,second,thrid) = t

7.拉链操作

把多个值绑在一起,一起处理,用zip方法完成

val sys = Array("<","-",">")

val counts = Array(2,10,2)

var pairs = sys.zip(counts)得到 Array(("<",2), ("-",10),(">",2))






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值