Я пишу метод equals для класса Scala, где accumUpdates имеет карту [Long, Any]. Я попробовал следующее:Iterate Записи карты внутри оператора соответствия
override def equals(other: Any): Boolean = other match {
case that: DirectTaskResult[_] if (!this.valueBytes.equals(that.valueBytes)) => false
case that: DirectTaskResult[_] if (this.accumUpdates.size != that.accumUpdates.size) => false
case that: DirectTaskResult[_] => {
for ((key, value) <- this.accumUpdates) {
if (!value.equals(that.accumUpdates.get(key))) false
}
}
case _ => false
}
выше дал мне:
TaskResult.scala:53: type mismatch;
[error] found : Unit
[error] required: Boolean
[error] for ((key, value) <- this.accumUpdates) {
[error] ^
[error] one error found
Может кто-то обеспечить подсказку, как записи Карта может повторяться?
Благодаря