Ich habe eine Liste. Für alle Zahlen in der ungeraden Position möchte ich 0 machen. Und für alle Zahlen in der geraden Position möchte ich es behalten, wie es ist. Ich versuche es über die Karte in der folgenden Weise zu machen.Forward-Referenz erstreckt sich über die Definition der Variablen in Scala
Hier ist mein Code
def main(args: Array[String]) {
var l1 = List (1,2,3,4,5,6)
println(l1.map(f(_)))
var c = 0
def f(n:Int):Int =
{
if (c%2 == 0)
{c +=1
return n}
else
{c += 1
return 0}
ich die Variable wollen den Überblick über die Position zu halten. Aber wie es scheint, kann ich den Verweis "c" nicht weiterleiten.
bekomme ich folgende Fehler
scala Vorwärts-Referenz über Definition der Variable c erstreckt
ich nicht auch ‚c‘ in der Funktion erklären kann, weil sie nie auf diese Weise erhöht werden .
Was sollte die Idee Weg, um zu erreichen, was ich versuche, mit Hilfe der Karte.
Perfekte Antwort, –