switch
statements or expression with default
branches which can never be taken,
because all possible values are covered by a case
branch.
Such elements are redundant, especially for switch
expressions, because they don't compile when all
enum constants are not covered by a case
branch.
The language level needs to be configured to 14 to report switch
expressions.
The provided quick-fix removes default
branches.
Example:
enum E { A, B }
int foo(E e) {
return switch (e) {
case A -> 1;
case B -> 2;
default -> 3;
};
}
After the quick-fix is applied:
enum E { A, B }
int foo(E e) {
return switch (e) {
case A -> 1;
case B -> 2;
};
}
Use the Only report switch expressions option to report only redundant default
branches in switch expressions.