Давайте предположим, что у нас есть опция foo1
и опция foo2
:
val foo1: Option[Foo]
val foo2: Option[Foo]
Есть ли оператор / функция, которая позволяет мне возвращать значение foo2
, когда foo1
равно None
?
val finalFoo: Option[Foo] = foo1.getOrElseOption(foo2)
Выше getOrElseOption
явно не существует. Я знаю, что мы можем сделать что-то подобное, но это несколько многословно и трудно понять:
foo1.map(Some(_)).getOrElse(foo2).