Je rencontre un problème étrange. Je suis en train d'écrire une simple classe implicite:Incompatibilité de type, trouvé Int requis Chaîne
private implicit class CounterMap[A](map: Map[A, Int]) {
def updateCounter(k: A): Map[A, Int] =
map + (k → map.getOrElse(k, 0) + 1)
}
mais quand je tente de compiler, je reçois l'erreur suivante:
error: type mismatch; found : Int(1) required: String map + (k → map.getOrElse(k, 0) + 1)
Ce poste semblait similaire Scala - type mismatch; found Int, required String, mais il ne semble pas évident pour moi que j'ai fait la même erreur. Je suis assez novice dans l'utilisation des classes implicites et des génériques dans Scala, il est donc probable qu'il me manque quelque chose d'évident ici. Toute aide ou explication pour expliquer pourquoi je reçois cette erreur serait incroyable.
Merci d'avance.
La flèche est très bien, mais votre réponse a révélé ce qui n'allait pas avec mon code. Le problème était qu'il me manquait la parenthèse autour de l'opération d'addition. Si vous modifiez cela, j'accepterai votre réponse. – Vikram
Ah, d'accord. Je pensais que '→' était copié/collé de quelque part. Bon à savoir que cela a fonctionné pour vous. –
Merci pour l'aide, qui me rendait fou :) – Vikram