A switch statement can be used with byte, short, char, and int primitive data types, along with enumerated types and the string class.

Sample code follows (from oracle.com):
public class SwitchDemo {

public static void main(String[] args) { 

int month = 8;
String monthString;
switch (month) {

case 1: monthString = "January";
break;
case 2: monthString = "February";
break;
case 3: monthString = "March";
break;
case 4: monthString = "April";
break;
case 5: monthString = "May";
break;
case 6: monthString = "June";
break;
case 7: monthString = "July";
break;
case 8: monthString = "August";
break;
case 9: monthString = "September";
break;
case 10: monthString = "October";
break;
case 11: monthString = "November";
break;
case 12: monthString = "December";
break;
default: monthString = "Invalid month";
break;

}
System.out.println(monthString);

}

}

Note: In the code above, August is printed to standard output. The body of a switch statement is known as a switch block. A statement in the switch block can be labeled with one or more case or default labels. The switch statement evaluates its expression, then executes all statements that follow the matching case label. Switch statements are used for conditional processing, providing a number of possible execution paths.