Scala: что представляет собой _ в этом случае

Я читаю учебник для демонстрации метода подъема в Scala. Вот код для базового класса:

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))
  }
}

Вот метод лифта:

  def lift[A, B](f: A => B): Optional[A] => Optional[B] = _ map f

Мой вопрос: что символ подчеркивания ("_") представляет в вышеупомянутой функции.

Спасибо

1 ответ

_ map f равно (a: Optional[A]) => a.map(f), _ является подстановочным знаком в Scala. для вашего примера это означает для параметра с типом Optional[A] и применять к map f

Другие вопросы по тегам