2
下面的示例中解決編譯錯誤的最佳方法是什麼?假設'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
謝謝。你能提供任何洞察,爲什麼最初不工作? – Pengin
當然。查看更新。你幾乎在你的問題上有解釋。 –
我以前不欣賞這個'父母'的生意。以前只是假定它是相同的。顯然不是。 – Pengin