我正在尝试在Scala中构建一个从整数到一组可变整数的可变映射。
例如,我希望拥有 1 -> (2,3) 形式的映射,并且以后能够使用键值更新它们。我使用的代码如下:
import scala.collection.mutable._
val map = Map[Int, Set[Int]]()
map: scala.collection.mutable.Map[Int,scala.collection.mutable.Set[Int]] = Map()
map += (1 -> Set(2,3))
res15: map.type = Map(1 -> Set(2, 3))
到目前为止很好,但是当我尝试做类似的事情时
map.get(1) += 4
我得到了 val 错误的分配。令我困惑的是 map.get() 应该返回一个可以更新的 scala.collection.mutable.Set 类型的 Set。有人可以解释一下这里发生了什么吗?