2016-09-28 5 views
0

私はマップをieratively構築したいので、私は変更可能なマップを撮影しました。私は空の値でこれを初期化したい。collection.mutable.Map [String、Any]をスカラーでインスタンス化する方法は?

私はこの

 val resultingMap: collection.mutable.Map[String, Any] = _ 

を試してみましたが、しかし、それはresultingMapにnullを割り当て、したがって、私はそれにレコードを追加しようとすると、それは当然例外がスローされます。

ので、私はそれが動作しますが、私はこれを行うためのより良い+標準的なアプローチを使用したいと思い、この

 val resultingMap: collection.mutable.Map[String, Any] = collection.mutable.Map("" -> "") 

のようなハックの方法を試してみました。

+0

あなたが最も可能性が高い 'cast'(危険な実行時の操作)する必要がありますよう' Any'が有用なタイプではないことに注意して順にそのタイプを利用する。 'Any'を使うことは、ランタイムキャストの危険性があることを考えると、Scalaのコードにおいは間違いありません。 –

+0

あなたはマッピングを追加するように誘惑しましたか? –

+0

@ChrisMartin私が言及したように、私はちょうど任意の値のセットを使ってマップを作成しようとしました、そして、 " - " "は単なる架空のペアです – sachinjain024

答えて

3

Map.empty[A, B] createは、キー値のペアがない空のMapを作成します。

import scala.collection.mutable._ 

val resultingMap: Map[String, Any] = Map.empty[String, Any] 

ScalaのREPL

scala> import scala.collection.mutable._ 
import scala.collection.mutable._ 

scala> Map.empty[String, Any] 
res29: Map[String, Any] = Map() 

scala> val map = Map.empty[String, Any] 
map: Map[String, Any] = Map() 
関連する問題