【发布时间】:2016-06-29 02:37:53
【问题描述】:
为什么scala.collection.immutable.SortedMap 和scala.collection.immutable.TreeMap 可以变异?
scala> import scala.collection.immutable.SortedMap
import scala.collection.immutable.SortedMap
scala> var sm = SortedMap(3 -> 'x', 1 -> 'x', 4 -> 'x')
sm: scala.collection.immutable.SortedMap[Int,Char] = Map(1 -> x, 3 -> x, 4 -> x)
scala> sm += (2 -> 'x')
scala> sm
res1: scala.collection.immutable.SortedMap[Int,Char] = Map(1 -> x, 2 -> x, 3 -> x, 4 -> x)
另外,我没有看到
http://www.scala-lang.org/api/current/index.html#scala.collection.immutable.SortedMap
和
http://www.scala-lang.org/api/current/index.html#scala.collection.immutable.TreeMap
+=的定义,它是怎么存在的?
【问题讨论】:
-
你不是唯一一个被这种 Scala 行为搞糊涂的人 - bruceeckel.github.io/2014/12/30/operator-underloading-in-scala
标签: scala