标签:而不是 strong 方法 tor 包含 key ips 创建 nts
1.构造映射
val scores = Map("Alice" -> 10, "Bob" -> 10, "Cindy" -> 8)
val scores = scala.collection.mutable.Map("Alice" -> 10, "Bob" -> 3, "Cindy" -> 8)
"Alice" -> 10
val scores = Map(("Alice", 10),("Bob", 3),("Cindy", 8))
2.获取映射中的值
val bobsScore = scores("Bob")
Tips:如果映射不包含请求中使用的键,则会抛出异常。
val bobsScore = if (score.contain("Bob")) scores("Bob") else 0
Tips:由于这样的组合调用十分普遍,以下是一个快捷写法:
val bobsScore = scores.getOrElse("Bob", 0)
Tips_2:映射.get(键)这样的调用返回一个Option对象,要么是Some(键对应的值),要么是None。
3.更新映射中的值
scores("Bob") = 10 //更新键"Bob"对应的值(假定scores是可变的)
scores += ("Bob" -> 10, "Fred" -> 7)
4.迭代映射
for ((k,v ) -> 映射) //处理k和v
这里的“魔法”是你可以在Scala的for循环中使用模式匹配。
5.元组:是不同类型的值的聚集
(1, 3.14, "Fred") //该元组的类型为:Tuple3[Int, Double, java.lang.String]
val second = t._2 //将second设为3.14
Tips:和数组或字符串中的位置不同,元组的个元组从1开始,而不是0.
val (first, second, third) = t //将first设为1,second设为3.14,third设为"Fred"
val (first, second, _) = t
6.拉链操作
val symbols = Array("<", "-", ">")
val counts = Array(2, 10, 2)
val pairs = symbols.zip(counts)
输出对偶的数组:
Array(("<", 2), ("-", 10), (">", 2)) //然后这些对偶就可以一起处理
Tips:可以用toMap方法将对偶的集合转换成映射。
keys.zip(valuse).toMap
标签:而不是 strong 方法 tor 包含 key ips 创建 nts
原文地址:http://www.cnblogs.com/xiagte/p/7787207.html