scala中神奇的map tuple zip
2015-07-17 21:49
495 查看
scala中的数组类型有三个很有意思:
map是对应的key,value形式
val map=Map("book"->10,"ipad"->1000) //> map : scala.collection.immutable.Map[String,Int] = Map(book -> 10, ipad ->
val map=Map("book"->10,"ipad"->1000) //> map : scala.collection.immutable.Map[String,Int] = Map(book -> 10, ipad ->
//| 1000)
for((k,v)<-map)yield (k,v*0.9) //> res0: scala.collection.immutable.Map[String,Double] = Map(book -> 9.0, ipad
//| -> 900.0)
val score =scala.collection.mutable.Map("Scala"->7,"hadoop"->8,"Spark"->10)
//> score : scala.collection.mutable.Map[String,Int] = Map(hadoop -> 8, Spark -
//| > 10, Scala -> 7)
val hadoopScore=score.getOrElse("hadoop", 0) //> hadoopScore : Int = 8
score+=("RRR"->10) //> res1: com.test.First.Study.action.score.type = Map(hadoop -> 8, Spark -> 10,
//| RRR -> 10, Scala -> 7)
score-=("RRR") //> res2: com.test.First.Study.action.score.type = Map(hadoop -> 8, Spark -> 10,
//| Scala -> 7)
tuple可以把很多不同的数据类型
//下标从1开始 下标加下划线
for((x,y)<-pairs )Console.print(x*y) //> !!-----]]
val tuple=(1,2,3,14,"rocy","spark") //> tuple : (Int, Int, Int, Int, String, String) = (1,2,3,14,rocy,spark)
val third=tuple._3 //> third : Int = 3
val (one,two,thirds,14,"rocy","spark")=tuple //> one : Int = 1
//| two : Int = 2
//| thirds : Int = 3
zip把两个集合中元素进行结合
val symbols=Array("!","-","]") //> symbols : Array[String] = Array(!, -, ])
val count=Array(2,5,2) //> count : Array[Int] = Array(2, 5, 2)
val pairs=symbols.zip(count) //> pairs : Array[(String, Int)] = Array((!,2), (-,5), (],2))
scala中的数组类型有三个很有意思:
map是对应的key,value形式
val map=Map("book"->10,"ipad"->1000) //> map : scala.collection.immutable.Map[String,Int] = Map(book -> 10, ipad ->
val map=Map("book"->10,"ipad"->1000) //> map : scala.collection.immutable.Map[String,Int] = Map(book -> 10, ipad ->
//| 1000)
for((k,v)<-map)yield (k,v*0.9) //> res0: scala.collection.immutable.Map[String,Double] = Map(book -> 9.0, ipad
//| -> 900.0)
val score =scala.collection.mutable.Map("Scala"->7,"hadoop"->8,"Spark"->10)
//> score : scala.collection.mutable.Map[String,Int] = Map(hadoop -> 8, Spark -
//| > 10, Scala -> 7)
val hadoopScore=score.getOrElse("hadoop", 0) //> hadoopScore : Int = 8
score+=("RRR"->10) //> res1: com.test.First.Study.action.score.type = Map(hadoop -> 8, Spark -> 10,
//| RRR -> 10, Scala -> 7)
score-=("RRR") //> res2: com.test.First.Study.action.score.type = Map(hadoop -> 8, Spark -> 10,
//| Scala -> 7)
tuple可以把很多不同的数据类型
//下标从1开始 下标加下划线
for((x,y)<-pairs )Console.print(x*y) //> !!-----]]
val tuple=(1,2,3,14,"rocy","spark") //> tuple : (Int, Int, Int, Int, String, String) = (1,2,3,14,rocy,spark)
val third=tuple._3 //> third : Int = 3
val (one,two,thirds,14,"rocy","spark")=tuple //> one : Int = 1
//| two : Int = 2
//| thirds : Int = 3
zip把两个集合中元素进行结合
val symbols=Array("!","-","]") //> symbols : Array[String] = Array(!, -, ])
val count=Array(2,5,2) //> count : Array[Int] = Array(2, 5, 2)
val pairs=symbols.zip(count) //> pairs : Array[(String, Int)] = Array((!,2), (-,5), (],2))
相关文章推荐
- iOS第二天注意和学习重点
- Hive数据加载(内部表,外部表,分区表)
- 支撑统计学的七大支柱!
- 喵哈哈的日常选数问题(数位DP)
- 关于Service中bindService注意的几个问题
- 1046. Shortest Distance (20) 坑我
- 关于Service中bindService注意的几个问题
- Tortoise SVN 提示 clean up 然而 clean up 没卵用的解决方法
- 线段树区间修改 懒惰标记 维护和、最大值、最小值
- LINUX之文件解压与压缩汇总
- 关于解决乱码问题的一点探索之一(涉及utf-8和GBK)
- OpenCV 数字验证码识别
- 理解dynamicsAX表里的各种key
- [LeetCode][Java] Set Matrix Zeroes
- 找规律 hdu4861 Couple doubi
- iOS动画中的物理知识应用之愤怒的小鸟-重力加速度
- poj 1840 Eqs(Hash)
- 一道树形dp的题目:个人赛第二场G题
- AndroidStudio插件GsonFormat快速实现JavaBean
- R12.2 克隆完成之后weblogic AdminSErver无法启动