아직 초보 스칼라 프로그래머이므로 미안하지만이 질문이 순진 해 보이지만 잠시 동안 검색 한 결과 해결책이 없습니다. 나는 스칼라 2.8을 사용하고, 나는 클래스 PXGivenZ 정의가로 :스칼라 유형 불일치 문제 (예상지도, scala.collection.mutable.HashMap을 찾음)
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)
내가 얻을 다음과 같은 오류 :지도 [서열 [지능], 맵 [INT, 더블] [는 HashMap [서열 [지능], HashMap의 다른 Int 인 방법 : 분명히 내가하지 않는 것이 있습니다
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)
^
,더블]]? 아니면 "변경 가능한"클래스에 문제가 있습니까?
나를 도울 사람에게 미리 감사드립니다!
감사! 그게 문제를 해결했습니다 :-) – Alberto
'HashMap'은 변경 가능하거나 변경할 수 없습니다. 변경할 수있는 버전을 가져와야합니다. –