不可变
api不太丰富
如果是var修饰,引用可变,支持读写
如果是val修饰,引用不可变,只能写入一次值,其后只读
可变
api丰富与Java中Map基本类似
如果是var修饰,引用可变,支持读写
如果是val修饰,引用不可变,支持读写
例子:
var b:Map[String,Int]=Map("k1"->1,"k2"->2)b-=("k1")b+=("k3"->3,"k4"->4)println(b)//val c:Map[String,Int]=Map("k1"->1,"k2"->2)//c-=("k1")//c+=("k3"->3,"k4"->4)//println(c) 报错import scala.collection.mutable.Mapval a:Map[String,Int]=Map("k1"->2,"k2"->1)a-=("k1")a+=("k3"->3,"k4"->4)println(a)var c:List[Int]=List(1,2)c-=(1)c:+=(3)c++=List(4,5)println(c)import scala.collection.mutable.ListBufferval d:ListBuffer[Int]=ListBuffer(1,2)d-=(1)d+=(5)d++=ListBuffer(3,4)println(d)
结果:
Map(k2 -> 2, k3 -> 3, k4 -> 4)Map(k3 -> 3, k4 -> 4, k2 -> 1)List(2, 3, 4, 5)ListBuffer(2, 5, 3, 4)