switch
statements that can be automatically replaced with enhanced switch
statements or expressions.
Example:
double getPrice(String fruit) {
// Switch statement can be replaced with enhanced 'switch'
switch (fruit) {
case "Apple":
return 1.0;
case "Orange":
return 1.5;
case "Mango":
return 2.0;
default:
throw new IllegalArgumentException();
}
}
After the quick-fix is applied:
double getPrice(String fruit) {
return switch (fruit) {
case "Apple" -> 1.0;
case "Orange" -> 1.5;
case "Mango" -> 2.0;
default -> throw new IllegalArgumentException();
};
}
switch
statement.
This inspection only reports if the language level of the project or module is 14 or higher
New in 2019.1