Ausgabe
Was ist der eleganteste Fall, None und Some() im selben Fall zu haben? Etwas wie:
val data: Option[Int] = getSomeData()
data match {
case None || Some(data) && data > 50 =>
case _ =>
}
Lösung
Sie können Option.forall
als Bedingung verwenden.
def foo(data: Option[Int]): Unit =
if (data.forall(_ > 50)) println("OK")
else println("KO")
foo(None)
// => OK
foo(Some(1))
// => KO
foo(Some(51))
// OK
Beantwortet von – cchantep
Antwort geprüft von – David Goodson (FixError Volunteer)