1

リスト[java.util.Map]をリスト[マップ]に変換する方法は?

古いリスト:

List[java.util.Map[String,String]]

指名手配リスト:

List[Map[String,String]]

List[Map] を新しくして oldList をループする必要がありますか?

ありがとう!

4

3 に答える 3

2

Scala コレクション パッケージのコンバーター メソッドを使用します。これは、変換方法を示すサンプルです。

import scala.collection.JavaConverters._

oldList: List[java.util.Map[String,String]]

wantedList= oldList.asScala

編集:

ウラジミール・マトベーエフが述べたように

wantedList=oldList.map(_.asScala)
于 2013-07-23T05:43:35.320 に答える
0

JavaConverters は Scala 2.9.0 以降非推奨となり、Scala 2.11-M1で削除されました。 使用しないでください。代わりにscala.collection.convert、モジュールを含むパッケージがありますWrapAsScala。暗黙の変換がありますdictionaryAsScalaMap

于 2013-07-23T07:06:38.027 に答える
0

scala.collection.JavaConversions静的メソッドを使用できます。これは、標準の Java コレクションからの暗黙的な変換を追加し、次のようなことを実行できるようにします (既に REPL を開いて import したと仮定しましょうscala.collection.JavaConversions._):

scala > x
res1: java.util.HashMap[String,String] = {1=2}

scala> x.toMap
res2: scala.collection.immutable.Map[String,String] = Map(1 -> 2)

次のように特定の問題を解決できます。

res5: list: List[java.util.HashMap[String, String]] = ()
scala > list.map(e => e.toMap)
res6: List[scala.collection.immutable.Map[String,String]] = ()
于 2013-07-23T05:53:24.173 に答える