类型不匹配,找到Int必需字符串

时间:2016-07-27 05:08:32

标签: scala

我有一个奇怪的问题。我正在尝试编写一个简单的隐式类:

frame.pack()

但是当我尝试编译时,我收到以下错误:

  

错误:类型不匹配;     发现:Int(1)     必需:字符串     map +(k→map.getOrElse(k,0)+ 1)

这篇文章看起来很相似Scala - type mismatch; found Int, required String,但对我来说,我犯了同样的错误似乎并不明显。我在Scala中使用隐式类和泛型相当新,所以我很可能在这里遗漏了一些明显的东西。任何帮助或解释为什么我收到这个错误都会很棒。

提前致谢。

1 个答案:

答案 0 :(得分:2)

问题似乎与括号有关。将内部表达括在括号中,如下所示:

map + (k -> (map.getOrElse(k, 0) + 1))

你提到的其他帖子有不同的问题。在该帖子中,Int被用作类型参数,而不是这里的情况。