一、Set、Map代码实战
import scala.collection.mutable //因为scala推荐我们用不可变包的里集合,所以这里需要导入mutable包
val data = mutable.Set.empty[Int] //构建空对象,需要指明元素类型
data ++= List(1,2,3) //追加集合
data += 4 //追加元素
println(data)
data --= List(2,3) //减少集合
println(data)
data += 1 //追加重复元素,但是Set并不会添加进去
println(data)
data.clear //清除Set里的元素
println(data)
println
//7
var map = mutable.Map.empty[String,String] //先构建一个空的Map
map("java") = "hadoop"
map("scala") = "spark"
println(map)
println(map("java")) //根据key找到value
输出:
Set(1, 2, 3, 4)
Set(1, 4)
Set(1, 4)
Set()
Map(scala -> spark, java -> hadoop)
hadoop
Set和Map中的元素是无序的,若需要有顺序,则TreeSet和TreeMap可以实现
二、TreeSet、TreeMap代码实战
import scala.collection.mutable.TreeSet
val treeset = TreeSet(1,3,9,5,7,6,8,2,4,9)
println(treeset)
val treeSetForChar = TreeSet("Spark","Scala","Hadoop")
println(treeSetForChar)
//7
import scala.collection.immutable.TreeMap
val treemap = TreeMap("java" -> "hadoop", "scala" -> "spark")
println(treemap)
会自动排好顺序
TreeSet(1, 2, 3, 4, 5, 6, 7, 8, 9)
TreeSet(Hadoop, Scala, Spark)
Map(java -> hadoop, scala -> spark)
参考资料来源于大数据梦工厂 深入浅出scala 第40讲 由王家林老师讲解