Power Features
Intermediate
13 min
Option & Result
Option bedeutet: Vielleicht ist ein Wert da. Result bedeutet: Entweder Erfolg oder Fehler.
01
Lesson
Option: Wert oder kein Wert
Statt null zu verstecken, sagt Option offen: Hier kann etwas fehlen.
Some<String> some = Some("Emerald");
None<String> none = None();
println(some.orElse("fallback"));
println(none.orElse("fallback"));
02
Lesson
Result: Erfolg oder Fehler
Result macht Fehler zu normalen Werten. Du musst sie nicht als Ausnahme durch die Gegend werfen.
Success<Int, String> ok = Success(42);
Failure<Int, String> err = Failure("failed");
println(ok.unwrapOr(0).toString());
println(err.unwrapOr(0).toString());
println(err.errorOr("none"));
03
Lesson
Idioten-sicher gesagt
Option: “Vielleicht habe ich etwas.”
Result: “Ich habe entweder das Ergebnis oder eine Erklärung, warum es nicht geklappt hat.”