【发布时间】:2012-10-02 20:22:15
【问题描述】:
解决以下示例中的编译错误的最佳方法是什么?假设“m”必须是 GenMap 类型,并且我无法控制 myFun 的参数。
import scala.collection.GenMap
object Test {
def myFun(m: Map[Int, String]) = m
val m: GenMap[Int, String] = Map(1 -> "One", 2 -> "two")
//Build error here on m.seq
// Found scala.collection.Map[Int, String]
// Required scala.collection.immutable.Map[Int, String]
val result = myFun(m.seq)
}
编辑:
我应该更清楚。在我的实际用例中,我无法控制 myFun,所以我必须向它传递一个 Map。 'm' 也来自另一个 scala 组件,如 GenMap。我需要将一个转换为另一个,但是collection.Map 和collection.immutable.Map 之间似乎存在冲突
【问题讨论】: