A switch statement helps you choose between many options easily. It makes your code cleaner when you have to check one value against many cases.
When you want to run different code based on a day of the week.
When you need to perform actions depending on a menu choice.
When you want to handle different commands from a user input.
When you want to replace many if-else checks on one variable.
When you want your code to be easier to read and maintain.
Syntax
Java
switch (variable) {
case value1:
// code to run if variable == value1break;
case value2:
// code to run if variable == value2break;
// more cases...
default:
// code to run if no case matchesbreak;
}
The break statement stops the switch from running the next cases.
The default case runs if no other case matches. It is optional but useful.
Examples
This example prints the name of the day for the number 3.
Always remember to use break to avoid running unwanted cases.
Switch works well with int, char, String, and enum types.
From Java 14+, you can use switch expressions for simpler code, but this example uses the classic form for beginners.
Summary
Switch helps pick one action from many based on a value.
Use case for each choice and break to stop.
default runs if no case matches.
Practice
(1/5)
1. What is the main purpose of a switch statement in Java?
easy
A. To repeat a block of code multiple times
B. To select one action from many based on a value
C. To define a new class
D. To handle errors and exceptions
Solution
Step 1: Understand the role of switch
The switch statement chooses one path from many based on a value.
Step 2: Compare with other options
Loops repeat code, classes define objects, and exceptions handle errors, so they don't match.
Final Answer:
To select one action from many based on a value -> Option B
Quick Check:
Switch = Select action based on value [OK]
Hint: Switch picks one case based on value, like a menu choice [OK]
Common Mistakes:
Confusing switch with loops
Thinking switch handles errors
Mixing switch with class definitions
2. Which of the following is the correct syntax to start a switch statement in Java?
easy
A. switch (variable) { ... }
B. switch variable { ... }
C. switch [variable] { ... }
D. switch variable() { ... }
Solution
Step 1: Recall switch syntax
The correct syntax uses parentheses around the variable: switch (variable) { ... }.
Step 2: Check other options
Options A, B, and D miss parentheses or use wrong brackets, causing syntax errors.
Final Answer:
switch (variable) { ... } -> Option A
Quick Check:
Switch needs parentheses around variable [OK]
Hint: Switch always uses parentheses around the variable [OK]
Common Mistakes:
Omitting parentheses
Using square brackets instead of parentheses
Adding parentheses after variable name
3. What will be the output of this Java code?
int day = 3;
switch (day) {
case 1: System.out.println("Monday"); break;
case 2: System.out.println("Tuesday"); break;
case 3: System.out.println("Wednesday"); break;
default: System.out.println("Invalid day");
}
medium
A. Wednesday
B. Tuesday
C. Invalid day
D. Monday
Solution
Step 1: Identify the value of day
The variable day is set to 3.
Step 2: Match the case in switch
Case 3 matches, so it prints "Wednesday" and then breaks out of the switch.
Final Answer:
Wednesday -> Option A
Quick Check:
day=3 matches case 3 = Wednesday [OK]
Hint: Match variable value to case label to find output [OK]
Common Mistakes:
Forgetting break causes fall-through
Choosing default when case matches
Mixing case numbers and output strings
4. Identify the error in this switch statement:
int num = 2;
switch (num) {
case 1:
System.out.println("One");
case 2:
System.out.println("Two");
break;
default:
System.out.println("Other");
}
medium
A. case labels must be strings
B. Missing default case
C. Switch variable must be a String
D. Missing break after case 1
Solution
Step 1: Check breaks in cases
Case 1 lacks a break, so execution falls through to case 2.
Step 2: Understand effect of missing break
Without break, both "One" and "Two" print when num=1, which may be unintended.
Final Answer:
Missing break after case 1 -> Option D
Quick Check:
Each case needs break to stop fall-through [OK]
Hint: Always add break after each case unless fall-through wanted [OK]
Common Mistakes:
Forgetting break causes multiple prints
Thinking default is mandatory
Believing switch only works with strings
5. You want to write a switch statement that prints "Weekend" for days 6 and 7, "Weekday" for days 1 to 5, and "Invalid" otherwise. Which code correctly implements this?
hard
A. switch(day) {
case 1,2,3,4,5: System.out.println("Weekday"); break;
case 6,7: System.out.println("Weekend"); break;
default: System.out.println("Invalid");
}
B. switch(day) {
case 1 || 2 || 3 || 4 || 5:
System.out.println("Weekday"); break;
case 6 || 7:
System.out.println("Weekend"); break;
default:
System.out.println("Invalid");
}
C. switch(day) {
case 1: case 2: case 3: case 4: case 5:
System.out.println("Weekday"); break;
case 6: case 7:
System.out.println("Weekend"); break;
default:
System.out.println("Invalid");
}
D. switch(day) {
case (1,2,3,4,5):
System.out.println("Weekday"); break;
case (6,7):
System.out.println("Weekend"); break;
default:
System.out.println("Invalid");
}
Solution
Step 1: Understand Java switch syntax for multiple cases
Java allows multiple case labels by stacking them without commas, like case 1: case 2:.
Step 2: Check each option's syntax
switch(day) {
case 1: case 2: case 3: case 4: case 5:
System.out.println("Weekday"); break;
case 6: case 7:
System.out.println("Weekend"); break;
default:
System.out.println("Invalid");
} correctly stacks cases. switch(day) {
case 1,2,3,4,5: System.out.println("Weekday"); break;
case 6,7: System.out.println("Weekend"); break;
default: System.out.println("Invalid");
} uses commas (invalid), C uses || (invalid), D uses parentheses (invalid).
Final Answer:
switch(day) {
case 1: case 2: case 3: case 4: case 5:
System.out.println("Weekday"); break;
case 6: case 7:
System.out.println("Weekend"); break;
default:
System.out.println("Invalid");
} -> Option C
Quick Check:
Stack multiple cases by repeating case lines [OK]
Hint: Stack multiple cases by repeating case lines without commas [OK]
Common Mistakes:
Using commas between case labels
Using logical OR (||) in case labels
Using parentheses around case labels
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.