Java Switch Statement
Switch over to this tutorial on using Java switch statements.
Switch statement in Java is for decision making. Unlike if-then and if-then-else statements, the switch statement can have a number of possible execution paths.
Syntax
The general form of a switch statement is:
switch (expression) {
case value1:
// statement sequence
break;
case value2:
// statement sequence
break;
... case valueN:
// statement sequence
break;
default:
// default statement sequence
}
The expression must be of type byte, short, int, or char; each of the values specified in the case statements must be of a type compatible with the expression.
Note: From Java 7, String is also supported in expression.
Flow Chart

Figure: Switch Statement
Example
// An example to illustrate switch statement
class Switch {
public static void main(String args[]) {
int month = 4;
String season;
switch (month) {
case 12:
case 1:
case 2:
season = "Winter";
break;
case 3:
case 4:
case 5:
season = "Spring";
break;
case 6:
case 7:
case 8:
season = "Summer";
break;
case 9:
case 10:
case 11:
season = "Autumn";
break;
default:
season = "Bogus Month";
}
System.out.println("April is in the " + season + ".");
}
}
The ouput of the program is:
April is in the Spring.
Here, expression month in switch statement matches to case with value 4, so season is assigned value Spring.
Note: three important features of the switch statement to be noted:
- The switch differs from the if in that switch can only test for equality, whereas if can evaluate any type of Boolean expression. That is, the switch looks only for a match between the value of the expression and one of its case constants.
- No two case constants in the same switch can have identical values. Of course, a switch statement and an enclosing outer switch can have case constants in common.
- A switch statement is usually more efficient than a set of nested ifs.
Published at DZone with permission of Yogen Rai. See the original article here.
Opinions expressed by DZone contributors are their own.