首页 > 代码库 > scala学习3 数组相关操作映射和元组
scala学习3 数组相关操作映射和元组
一.定长数组
如果需要一个长度不变的数组,可以使用Scala中的Array.
val nums = new Array[int](10)
val s = Array("Hello","world")
二.变长数组:数组缓冲
1.val b = ArrayBuffer[int]()2.追加元素b +=(1,2,3,4,5)3.追加任何集合b ++= Array(8,13,21)4.移除最后5个元素b.trimEnd(5)5.插入元素b.insert(2,6)6.插入任意多个元素b.insert(2,7,8,9)7.移除元素b.remove(1)8,移除多个元素b.remove(2,3,4,5)三.遍历数组和数组缓冲1.两个元素一跳0 until (a.length, 2)2.从数组的尾端开始遍历(0 util a.length).reverse映射和元组一.构造映射1.不可变映射val sources = Map("Alice" -> 10,"Bob" ->3)2.可变映射val scores = new scala.collection.mutable.HashMap[String,int]二.获取映射中的值val bobs = scores("Bob") //类似java中的scores.get("Bob")val bobsScore = scores.getOrElse("Bob",0)三 更新映射中的值scores("Bob") = 10 //更新键"Bob"对应的值scores("Fred") = 7 //增加新的键scores += ("Bob" -> 10, "Fred" -> 7) //添加多个关系scores -= "Alice" //移除某个键和对应的值var scores = .....; scores =scores +("Bob" -> 10, "Fed" ->7) //更新不可以变集合映射四.迭代映射1.for((k,v) <- 映射)2.scores.keyset//类似java的keysetscores.values //映射值得集合3.五.非哈希映射val scores = scala.collections.immutable.Sortedmap("Alice" ->10,"Fred"_>7)六. 与java的互操作把Java的TreeMap转为Scala映射类型val scores: scala.collection.mutable.Map[String,Int] = new java.util.TreeMap[String,Int]将java.util.Properties 转到Map[String,String]val props: scala.collection.Map[String,String] = System.getProprties()七.元组映射是键/值对偶的集合.对偶式元组的最简单形态-----元组是是不同类型的值的聚集.1.元组通过将单个值包含在园括号中构成(1,3.14,"Fred")2.如果有一个元组, val t = {1,2,"ff"},可以使用val first = t._1 //将t元组中的第一个值赋给first,元组的组员是从1开始的二非03.对应不需要的组员可以使用_,进行替换val (first,scond, _) = t元组可以用在函数需要返回不止一个值的情况,八.拉链操作val symbols = Array("<","-",">")val counts = Arry(2,10,2)val pairs = sysbols.zip(counts)输出对偶数组Array(("<",2),("-",10),(">",2))
scala学习3 数组相关操作映射和元组
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。