谁能解释一下可变映射中的默认值是如何工作的?
scala> val mmap = mutable.Map[String, mutable.Set[String]]().withDefaultValue{mutable.Set[String]()}
mmap: scala.collection.mutable.Map[String,scala.collection.mutable.Set[String]] = Map()
scala> mmap("a") += "b"
res1: scala.collection.mutable.Set[String] = Set(b)
Run Code Online (Sandbox Code Playgroud)
地图是空的,没有钥匙。
scala> mmap
res2: scala.collection.mutable.Map[String,scala.collection.mutable.Set[String]] = Map()
Run Code Online (Sandbox Code Playgroud)
但我刚刚尝试编辑的关键是显示数据。
scala> mmap("a")
res3: scala.collection.mutable.Set[String] = Set(b)
Run Code Online (Sandbox Code Playgroud)
为什么是res2空地图但mmap("a")有值?