Switch Statement in Java

View more categories:

1- Structure of switch statement

// variable_to_test: A varible to test.
switch ( variable_to_test ) {
  case value1:
   // Do something here ...
   break;
  case value2:
   // Do something here ...
   break;
  default:
   // Do something here ...
}

The characteristics of switch statement:

The switch will check the value of a variable and compare that variable with each different value from top to bottom. Each value to be compared is called a case. When a case is true, the statement block of that case will be executed.
If all cases are false, the default statement block will be executed. Note: in the structure of the switch statement, there is probably or not a default statement block.
When finding a true case, the statement block of such case will be executed. If not meeting the break statement in this block, the program will continue performing the blocks below until it meets the break statement or no statement block is executed.

The  break statement makes the program exit the switch. (See the illustration below).
Note that the case statement is a specific value you can not do the following:
// This is not allowed !!
case (age < 18) :

// case only accept a specific value, eg:
case 18:
  // Do something here ..
  break;

2- switch Example

SwitchExample1.java
package org.o7planning.tutorial.javabasic.controlflow;

public class SwitchExample1 {

	public static void main(String[] args) {

		// Declare a variable age
		int age = 20;

		// Check the value of age
		switch (age) {
		// Case age = 18
		case 18:
			System.out.println("You are 18 year old");
			break;
		// Case age = 20
		case 20:
			System.out.println("You are 20 year old");
			break;
		// Remaining cases
		default:
			System.out.println("You are not 18 or 20 year old");
		}

	}

}
The results of running the SwitchExample1 class:

3- break statement in switch

break means a statement to be able to appear in the case block, or default block of switch. When meeting the break statement, the program will exit the switch.
When the program meets a switch statement, it will check cases from top to bottom. When finding a true case, the block of that case will be executed. If it doesn't meet the break statement in this block, it will continue to execute the blocks below until it meets the break statement or there is no longer block to execute. 

Example:

SwitchExample2.java
package org.o7planning.tutorial.javabasic.controlflow;

public class SwitchExample2 {

	public static void main(String[] args) {

		// Declare a variable age.
		int age = 30;

		// Check the value of age.
		switch (age) {
		// Case age = 18
		case 18:
			System.out.println("You are 18 year old");
			break;
		// Case age in 20, 30, 40
		case 20:
		case 30:
		case 40:
			System.out.println("You are " + age);
			break;
		// Remaining case:
		default:
			System.out.println("Other age");
		}

	}

}
The results run:

View more categories: