Я все еще начинающий программист Scala, поэтому извините, если этот вопрос может показаться наивным, но я некоторое время искал и не нашел решений.Я использую Scala 2.8, и у меня есть класс PXGivenZ, определенный как:
class PXGivenZ (val x:Int, val z:Seq[Int], val values: Map[Seq[Int], Map[Int, Double]] ){...}
Когда я пытаюсь создать экземпляр элемента этого класса в другом блоке программы, например:
// x is an Int
// z is a LinkedList of Int
...
var zMap = new HashMap[Seq[Int], HashMap[Int, Double]]
...
val pxgivenz = new PXGivenZ(x, z, zMap)
Я получаю следующую ошибку:
found : scala.collection.mutable.HashMap[Seq[Int],scala.collection.mutable.HashMap[Int,Double]]
required: Map[Seq[Int],Map[Int,Double]]
val pxgivenz = new PXGivenZ(x, z, zMap)
^
Я явно чего-то не понимаю: чем Map [Seq [Int], Map [Int, Double]] отличается от HashMap [Seq [Int], HashMap [Int, Double]]?Или что-то не так с "изменяемыми" классами?
Заранее спасибо всем, кто мне поможет!