Scala collections
In Scala, collections are automatically mutable or immutable depending on your usage. All collections in scala.collections.immutable
are immutable, and vice versa for scala.collections.immutable
. Scala picks immutable collections by default, so your code will then draw automatically from the mutable collections:
var List mylist;
This happens unless you prefix your variable with immutable
:
var mylist immutable.List;
We can see this in this small amount of code, for example:
var mutableList = List(1, 2, 3); var immutableList = scala.collection.immutable.List(4, 5, 6); mutableList.updated(1,400); immutableList.updated(1,700);
As you can see in this screenshot of the notebook:
Note that Scala cheated a little here; it created a new collection when we updated immutableList
, as you can see, with the variable name as real_3
instead.