Ich suche nach einer Möglichkeit in scala, um eine Funktion aufzurufen und Option
als Ergebnis zu erhalten, das "None" ist, wenn entweder eine Exception beim Aufruf der Methode ausgelöst wird oder die Methode null zurückgibt. Andernfalls sollte die Option den Wert des Ergebnisses haben.Try/Option mit null
Ich weiß, dass Try
kann für den ersten Teil verwendet werden, aber ich weiß nicht, wie der zweiten Teil zu handhaben:
val result = Try(myFunction).toOption()
Wenn die Methode jetzt null zurück (weil es keine scala Funktion ist aber eine Java-Funktion), result
ist Some(null)
statt None
.
Das sieht ordentlich aussieht. – tuxdna
Kann das irgendwie verpackt werden, damit ich nicht so viele Dinge schreiben muss? – theomega
@theomega: siehe Aktualisierung. – senia