Как всегда, вы должны задать вопрос, действительно ли вам нужна изменчивая карта.
Неизменные карты не тривиальны строить:
val map = Map(
"mykey" -> "myval",
"myotherkey" -> "otherval"
)
Mutable карты не отличаются, когда первый строится:
val map = collection.mutable.Map(
"mykey" -> "myval",
"myotherkey" -> "otherval"
)
map += "nextkey" -> "nextval"
В обоих этих случаях, вывод будет использоваться для определения правильного типа параметры экземпляра карты.
Вы также можете провести непреложную карту в var
, переменный будет обновляться с новым экземпляром неизменной карты каждый раз, когда вы выполняете «обновление»
var map = Map(
"mykey" -> "myval",
"myotherkey" -> "otherval"
)
map += "nextkey" -> "nextval"
Если у вас нет какого-либо начальных значения, вы можете использовать карту.пусто:
val map : Map[String, String] = Map.empty //immutable
val map = Map.empty[String,String] //immutable
val map = collection.mutable.Map.empty[String,String] //mutable
Увы, при использовании 'new' пустые круглые скобки не нужны. –