![]()
Java is a wonderful language, but it’s syntax tends to be a bit too verbose sometimes. It is good to see that in Java 12, the new Switch Expressions will now use pattern matching to provide simpler coding standards.
Below is a simple example to illustrate the differences:
In Java 11
int numLetters;
switch (fruit) {
case PEAR:
numLetters = 4;
break;
case APPLE:
case GRAPE:
case MANGO:
numLetters = 5;
break;
case CHERRY:
case ORANGE:
case PAPAYA:
case BANANA:
numLetters = 6;
break;
case WATERMELON:
case GRAPEFRUIT:
numLetters = 10;
break;
default:
numLetters = 0;
}
Now in Java 12
int numLetters = switch (fruit){
case PEAR -> 4;
case APPLE, MANGO, GRAPE -> 5;
case ORANGE, PAPAYA, BANANA -> 6;
case WATERMELON, GRAPEFRUIT -> 10;
default -> numLetters = 0;
}
As you can see, this new switch expression brings clearer and cleaner code.