Ich lese ein Tutorial zur Demonstration über Hebe-Methode in Scala. Hier ist der Code für die Basisklasse:Scala: Was bedeutet _ in diesem Fall
case object None extends Optional[Nothing]
case class Presenter[+A](get: A) extends Optional[A]
trait Optional[+A] {
def map[B](f: A => B): Optional[B] = this match {
case None => None
case Presenter(x) => Presenter(f(x))
}
}
Hier wird die Hebeverfahren:
def lift[A, B](f: A => B): Optional[A] => Optional[B] = _ map f
Meine Frage ist: Was unterstreichen ist ("_") stellt in obiger Funktion.
dank
Aufzug bringt eine neue Funktion von Optional [A] zu Optional [B] zurück. Also Optional [A] ist das Eingabeargument dieser neuen Funktion. In diesem Fall stellt das _ das Argument Optional [A] dar, auf dem die Funktion 'map' mit dem Argument 'f' der Funktion 'lift' aufgerufen wird. –