En écrivant le code suivant dans scalaParse error de tuples imbriquées dans scala
var m = Map((0,1) -> "a")
m += ((0,2), "b") // compilation error
J'obtiens l'erreur
type mismatch; found : Int(0) required: (Int, Int)
Cependant, la modification de la syntaxe du tuple de (X,Y)
à (X -> Y)
œuvres
var m = Map((0,1) -> 'a)
m += ((0,2) -> 'b) // compiles file
Même si
((0,1).getClass == (0 -> 1).getClass) // is true
(0,1).isInstanceOf[Tuple2[_,_]] && (0 -> 1).isInstanceOf[Tuple2[_,_]] // both true
Pourquoi est-ce? Qu'est-ce que scala pense que mon tuple imbriqué est?
I * toujours * faire la même erreur –