Dies ist eine Mehrdeutigkeit, die durch die Ähnlichkeit zwischen der Notation für Tupel und der für Parameterlisten verursacht wird:
x + (1,0)
ist eine Notation für x.+(1,0)
, aber leider gibt es keine Methode für x
, die zwei Int
-Parameter benötigt. Was Sie wollen, ist x.+((1,0))
, d. H.% Co_de%.
Es gibt etwas in Scala, das man auto-tupling nennt, siehe diese Frage und Antworten , die zum Beispiel x + ((1,0))
in println (1,2)
umschreibt. Außer das wird hier nicht funktionieren, weil die println((1,2))
-Methode eine variable Anzahl von Argumenten akzeptiert und nicht eine einzige wie +
.
Sie erhalten diese seltsame Fehlermeldung, weil Sie erwarten, dass jeder Wert in Ihrer Parameterliste println
ein Tupel ist, wie in (1,0)
. Es findet ein myMap + ((1,2), (1,3), (3,4))
statt eines Int
, daher der Fehler.
fügen Sie ein weiteres Paar Klammern hinzu, damit es funktioniert:
%Vor%