Day 6: Learnt About Modern switch in Java 21
Goodbye Break, Hello ->
Modern switch in Java 21 allows using arrow syntax (->), so you can skip the break keyword and avoid accidental fall-throughs.
Without arrow syntax, you can use the yield keyword to return a value from a switch expression.
- To group multiple case values, use a comma-separated list:
case 1,2 ->
- When using a sealed hierarchy, the compiler checks for exhaustiveness at compile time:
sealed interface Shape permits Circle, Square {}
final class Circle implements Shape {}
final class Square implements Shape {}
String result = switch (shape) {
case Circle c -> "Circle!";
case Square s -> "Square!";
};
it also supports null case unlike classic java.
case null->"no"
It supports pattern matching and guards (when), allowing type checks and additional conditions directly in switch:
Object obj = 10;
String result = switch (obj) {
case Integer i when i > 5 -> "Large number";
case Integer i -> "Small number";
default -> "Other";
};
Top comments (0)