Pisząc następujący kod w Scalabłąd składni zagnieżdżonych krotek w Scala
var m = Map((0,1) -> "a")
m += ((0,2), "b") // compilation error
Dostaję błąd
type mismatch; found : Int(0) required: (Int, Int)
Jednak zmienia składnia krotki z (X,Y)
do (X -> Y)
prac
var m = Map((0,1) -> 'a)
m += ((0,2) -> 'b) // compiles file
Mimo że
((0,1).getClass == (0 -> 1).getClass) // is true
(0,1).isInstanceOf[Tuple2[_,_]] && (0 -> 1).isInstanceOf[Tuple2[_,_]] // both true
Dlaczego tak jest? Co scala myśli o mojej zagnieżdżonej krotce?
I * zawsze * popełnić tego samego błędu –