我写了一个与此非常相似的函数:
def writeMyEl (x: TypeA, y: TypeB, z : TypeC) {
if (myMutableHashMap.contains((x, y)))
myMutableHashMap(x, y) = z else
myMutableHashMap += (x, y) -> z
}
在实际代码中,类型 A 和 B 是枚举,而 C 是案例类。myMutableHashMap 被定义为与函数在同一类中val
的类型。scala.collection.mutable.HashMap[(TypeA, TypeB), TypeC]
writeMyEl
Scala (2.8) 编译器说:
error: too many arguments for method update: (key: (TypeA, TypeB),value: TypeC)Unit
我究竟做错了什么?