📖 Scenario: You are creating a simple program that tells the day of the week based on a number input from 1 to 7.This is like a small calendar helper that converts numbers to day names.
🎯 Goal: Build a Java program that uses a switch statement to print the correct day name for a given number.
📋 What You'll Learn
Create an integer variable called dayNumber with a value from 1 to 7
Create a switch statement using dayNumber
Use case labels for numbers 1 to 7 to print the correct day name
Include a default case to print "Invalid day number" for other values
Print the day name or error message as the final output
💡 Why This Matters
🌍 Real World
Switch statements are used in many programs to choose actions based on user input or other values, like menus or commands.
💼 Career
Understanding switch statements helps you write clear and efficient code for decision-making in software development.
Progress0 / 4 steps
1
Create the day number variable
Create an integer variable called dayNumber and set it to 3.
Java
Hint
Use int dayNumber = 3; to create the variable.
2
Start the switch statement
Write a switch statement using the variable dayNumber.
Java
Hint
Use switch (dayNumber) { } to start the switch.
3
Add cases for days 1 to 7 and default
Inside the switch, add case labels for numbers 1 to 7. For each case, write System.out.println to print the correct day name: 1 for "Monday", 2 for "Tuesday", 3 for "Wednesday", 4 for "Thursday", 5 for "Friday", 6 for "Saturday", and 7 for "Sunday". Add a default case that prints "Invalid day number". Use break; after each case.
Java
Hint
Remember to use break; after each case to stop fall-through.
4
Run and print the output
Run the program and observe the output printed by the switch statement for dayNumber = 3. It should print "Wednesday".
Java
Hint
The output should be exactly "Wednesday" because dayNumber is 3.
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.