如何将linkedhashmap转换为java类型?

时间:2017-02-04 23:11:48

标签: scala

我正在使用需要linkedhashmap的java API

LinkedHashMap<String, String> parameters = new LinkedHashMap<String, String>();

我应该只使用scala版本然后以某种方式转换它吗?

我创建了我的可变地图:

val l = mutable.LinkedHashMapString,String

我正在尝试使用以下方式转换它:

import scala.collection.JavaConverters._

l.asJava

我收到错误:

[error]  found   : java.util.Map[String,String]
[error]  required: java.util.LinkedHashMap[String,String]

1 个答案:

答案 0 :(得分:2)

大多数Java集合都有一个构造函数,允许您从另一个集合创建它们。

new LinkedHashMap[String, String](l.asJava)

你也可以将你的scala集合明确地折叠成一个

l.foldLeft(new java.util.LinkedHashMap[String, String]){(acc, x) => acc.put(x._1, x._2); acc}