Case
Declarative branching without switch fall-through.
Case lets you express conditional logic as data — each branch is a predicate plus a value (or value-supplier), evaluated in order.
String label = Case.match(score)
.of(s -> s >= 90, "A")
.of(s -> s >= 80, "B")
.of(s -> s >= 70, "C")
.orElse("F");
No fall-through, no boilerplate, fully type-safe.