List
在Scala中列表要么为空(Nil表示空列表),要么是一个head元素加上一个tail列表。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| object ListApp { def main(args: Array[String]): Unit = { val list1 = List("Hello", "Scala", "Hadoop") println(list1)
val list2 = "Spark" :: "Storm" :: "Kylin" :: "Scala" :: Nil println(list2)
val list3 = scala.collection.mutable.ListBuffer[String]() if (list3.isEmpty){ println("我是空") }
list3 ++= list1 list3 += "Hadoop" println(list3 + " 长度:" + list3.size) } }
|
结果
1 2 3 4
| List(Hello, Scala, Hadoop) List(Spark, Storm, Kylin, Scala) 我是空 ListBuffer(Hello, Scala, Hadoop, Hadoop) 长度:4
|
Set
Set代表一个没有重复元素的集合;将重复元素加入Set是没有用的,而且 Set 是不保证插入顺序的,即 Set 中的元素是乱序的。
1 2 3 4 5 6 7 8 9
| object SetApp { def main(args: Array[String]): Unit = { var set1 = Set(2, 5, 1, 1, -1, 0) set1 += 9
println(set1) } }
|
结果
1
| HashSet(0, 5, 1, 9, 2, -1)
|
Map
1 2 3 4 5 6 7 8 9 10 11 12 13
| object MapApp { def main(args: Array[String]): Unit = {
var scores1 = Map("NO1" -> "校花", "NO2" -> "美女", "NO3" -> "女神") val scores2 = Map(("NO1" -> "校花"), ("NO2" -> "美女"), ("NO3" -> "女神")) scores1 +=("NO4" -> "萝莉")
println(scores1("NO2")) println(scores2.getOrElse("NO3", "不在榜单中")) } }
|
结果