Bird
Raised Fist0
Javaprogramming~5 mins

Switch statement in Java

Choose your learning style10 modes available
Introduction

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 == value1
        break;
    case value2:
        // code to run if variable == value2
        break;
    // more cases...
    default:
        // code to run if no case matches
        break;
}

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.
Java
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("Other day");
        break;
}
This example shows how to group cases together to run the same code.
Java
char grade = 'B';
switch (grade) {
    case 'A':
        System.out.println("Excellent");
        break;
    case 'B':
    case 'C':
        System.out.println("Well done");
        break;
    case 'D':
        System.out.println("You passed");
        break;
    default:
        System.out.println("Try again");
        break;
}
Sample Program

This program uses a switch statement to find the name of the month from its number and prints it.

Java
public class SwitchExample {
    public static void main(String[] args) {
        int month = 4;
        String monthName;

        switch (month) {
            case 1:
                monthName = "January";
                break;
            case 2:
                monthName = "February";
                break;
            case 3:
                monthName = "March";
                break;
            case 4:
                monthName = "April";
                break;
            default:
                monthName = "Unknown";
                break;
        }

        System.out.println("Month number " + month + " is " + monthName);
    }
}
OutputSuccess
Important Notes

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

  1. Step 1: Understand the role of switch

    The switch statement chooses one path from many based on a value.
  2. Step 2: Compare with other options

    Loops repeat code, classes define objects, and exceptions handle errors, so they don't match.
  3. Final Answer:

    To select one action from many based on a value -> Option B
  4. 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

  1. Step 1: Recall switch syntax

    The correct syntax uses parentheses around the variable: switch (variable) { ... }.
  2. Step 2: Check other options

    Options A, B, and D miss parentheses or use wrong brackets, causing syntax errors.
  3. Final Answer:

    switch (variable) { ... } -> Option A
  4. 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

  1. Step 1: Identify the value of day

    The variable day is set to 3.
  2. Step 2: Match the case in switch

    Case 3 matches, so it prints "Wednesday" and then breaks out of the switch.
  3. Final Answer:

    Wednesday -> Option A
  4. 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

  1. Step 1: Check breaks in cases

    Case 1 lacks a break, so execution falls through to case 2.
  2. Step 2: Understand effect of missing break

    Without break, both "One" and "Two" print when num=1, which may be unintended.
  3. Final Answer:

    Missing break after case 1 -> Option D
  4. 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

  1. Step 1: Understand Java switch syntax for multiple cases

    Java allows multiple case labels by stacking them without commas, like case 1: case 2:.
  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).
  3. 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
  4. 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 unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard