Ich möchte eine Funktion in Scala, die "match ... case" verwendet, um die Werte einer Liste zu verdoppeln.Warum ist diese Liste leer?
Zum Beispiel:
doubleList(List(2,1,4,5))
//> res0: List[Int] = List(4, 2, 8, 10)
ich diese Funktion schrieb:
def doubleList(xs: List[Int]): List[Int] =
xs match {
case y :: ys =>
y * 2; doubleList(ys);
case Nil => xs;
}
Aber ich erhalte eine leere Liste als Ergebnis:
//> res0: List[Int] = List()
Kann mir jemand teel, was ich bin falsch machen?
Jeder Grund, warum Sie nicht nur 'map (_ * 2)' verwenden? –
Ja, ich bin verpflichtet, spezifisch "match ... case" zu verwenden. – undisp