Introduce Java Switch and give examples
The switch
statement in Java is a control flow statement that allows you to execute one block of code among many based on the value of a variable or expression. It is often used as an alternative to multiple if-else
statements when you have a variable that can take on multiple discrete values.
switch (expression) {
case value1:
// Code to be executed if expression equals value1
break; // Optional
case value2:
// Code to be executed if expression equals value2
break; // Optional
// You can have any number of case statements
default:
// Code to be executed if expression doesn't match any case
}
expression
can be of type int
, char
, String
, or an enumerated type (enum).case
statement checks for a specific value.break
statement is used to exit the switch block. If omitted, execution will continue to the next case (this is known as "fall-through").default
case is optional and will execute if none of the case
values match the expression.public class SwitchExample {
public static void main(String[] args) {
int day = 3;
String dayName;
switch (day) {
case 1:
dayName = "Monday";
break;
case 2:
dayName = "Tuesday";
break;
case 3:
dayName = "Wednesday";
break;
case 4:
dayName = "Thursday";
break;
case 5:
dayName = "Friday";
break;
case 6:
dayName = "Saturday";
break;
case 7:
dayName = "Sunday";
break;
default:
dayName = "Invalid day";
break;
}
System.out.println("Day " + day + " is " + dayName);
}
}
public class SwitchStringExample {
public static void main(String[] args) {
String fruit = "Apple";
switch (fruit) {
case "Apple":
System.out.println("You selected Apple.");
break;
case "Banana":
System.out.println("You selected Banana.");
break;
case "Cherry":
System.out.println("You selected Cherry.");
break;
default:
System.out.println("Unknown fruit.");
break;
}
}
}
public class FallThroughExample {
public static void main(String[] args) {
int number = 2;
switch (number) {
case 1:
System.out.println("Number is 1");
break;
case 2:
case 3:
System.out.println("Number is 2 or 3");
// No break here, so it will fall through to the next case
case 4:
System.out.println("Number is 4");
break;
default:
System.out.println("Number is not 1, 2, 3, or 4");
break;
}
}
}
The switch
statement is a powerful tool for handling multiple conditions in a clean and organized manner. It can improve the readability of your code, especially when dealing with multiple discrete values. However, it's important to use it judiciously, as sometimes if-else
statements may be more appropriate, especially for complex conditions.