Если вы используете 2.7, это потому, что со временем библиотека коллекций стала несовместимой с различными классами реализации, не специализирующимися на типах возвращаемых данных некоторых методов. Это одна из вещей, которая исправлена в редизайне библиотеки коллекций для 2.8.
Если вы используете 2.8, это потому, что метод update
устарел, и вы должны вместо него использовать updated
. Это правильно специализирует возвращаемое значение.
scala> HashMap(1->1, 2->2, 3->3, 4->4).updated(1,3)
res4: scala.collection.immutable.HashMap[Int,Int] = Map((2,2), (4,4), (1,3), (3,3))