0
我遇到一个奇怪的问题。我试图写一个简单的隐类:类型不匹配,找到Int要求字符串
private implicit class CounterMap[A](map: Map[A, Int]) {
def updateCounter(k: A): Map[A, Int] =
map + (k → map.getOrElse(k, 0) + 1)
}
但是当我尝试编译,我得到以下错误:
error: type mismatch; found : Int(1) required: String map + (k → map.getOrElse(k, 0) + 1)
这个职位似乎相似Scala - type mismatch; found Int, required String,但它似乎没有在我看来,我犯了同样的错误。我在Scala中使用隐式类和泛型相当新,所以很可能我在这里忽略了一些明显的东西。任何帮助或解释为什么我得到这个错误将是惊人的。
在此先感谢。
箭头确实很好,但你的回答确实揭示了我的代码出了什么问题。问题在于我错过了加法操作的括号。如果你编辑,我会接受你的答案。 – Vikram
啊,好吧。我以为'→'是从某处复制/粘贴的。很高兴知道它为你工作。 –
感谢您的帮助,这让我疯狂:) – Vikram