Bird
Raised Fist0
Swiftprogramming~5 mins

Switch with compound cases in Swift

Choose your learning style10 modes available
Introduction

Switch with compound cases lets you check if a value matches any of several options in one place. It keeps your code neat and easy to read.

When you want to run the same code for multiple matching values.
When you have a list of related options that need the same response.
When you want to avoid repeating code for similar cases.
When you want your code to be clear and organized.
When you want to handle multiple conditions in a simple way.
Syntax
Swift
switch value {
case option1, option2, option3:
    // code to run if value matches any option
case option4:
    // code for option4
default:
    // code if no cases match
}

You separate multiple cases with commas in one case line.

The default case runs if no other case matches.

Examples
This checks if the fruit is apple, banana, or orange and prints the same message for all.
Swift
let fruit = "apple"
switch fruit {
case "apple", "banana", "orange":
    print("This is a common fruit.")
case "kiwi":
    print("This is a tropical fruit.")
default:
    print("Unknown fruit.")
}
This groups odd and even numbers in compound cases.
Swift
let number = 3
switch number {
case 1, 3, 5, 7, 9:
    print("Odd number")
case 2, 4, 6, 8, 10:
    print("Even number")
default:
    print("Number out of range")
}
Sample Program

This program checks if the day is a weekend or a weekday using compound cases.

Swift
let day = "Saturday"
switch day {
case "Saturday", "Sunday":
    print("It's the weekend!")
case "Monday", "Tuesday", "Wednesday", "Thursday", "Friday":
    print("It's a weekday.")
default:
    print("Not a valid day.")
}
OutputSuccess
Important Notes

Compound cases help avoid repeating the same code for similar values.

You can mix compound cases with single cases in the same switch.

Remember to include a default case to handle unexpected values.

Summary

Use commas to list multiple values in one case.

Compound cases make your switch statements cleaner and easier to read.

Always include a default case to cover all possibilities.

Practice

(1/5)
1.

What does a compound case in a Swift switch statement allow you to do?

easy
A. Skip the default case safely
B. Use multiple switch statements at once
C. Combine if and switch in one line
D. Match multiple values in a single case using commas

Solution

  1. Step 1: Understand compound cases

    Compound cases let you list several values separated by commas in one case.
  2. Step 2: Recognize the benefit

    This makes the code cleaner by avoiding repeated code for similar cases.
  3. Final Answer:

    Match multiple values in a single case using commas -> Option D
  4. Quick Check:

    Compound case = multiple values in one case [OK]
Hint: Look for commas inside a case to spot compound cases [OK]
Common Mistakes:
  • Thinking compound cases combine multiple switches
  • Believing compound cases skip default
  • Confusing compound cases with if-else
2.

Which of the following is the correct syntax for a compound case in Swift?

switch value {
    case 1, 2, 3:
        print("One to three")
    default:
        print("Other")
}
easy
A. case 1, 2, 3:
B. case 1; 2; 3:
C. case (1, 2, 3):
D. case [1, 2, 3]:

Solution

  1. Step 1: Recall Swift compound case syntax

    Swift uses commas to separate multiple values in one case.
  2. Step 2: Check each option

    case 1, 2, 3: uses commas correctly; others use semicolons, parentheses, or brackets incorrectly.
  3. Final Answer:

    case 1, 2, 3: -> Option A
  4. Quick Check:

    Commas separate values in compound case [OK]
Hint: Use commas, not semicolons or brackets, for compound cases [OK]
Common Mistakes:
  • Using semicolons instead of commas
  • Putting values inside parentheses or brackets
  • Missing the colon after case
3.

What will be printed by this Swift code?

let letter = "b"
switch letter {
case "a", "e", "i", "o", "u":
    print("Vowel")
case "b", "c", "d":
    print("Consonant")
default:
    print("Other")
}
medium
A. Vowel
B. No output
C. Consonant
D. Other

Solution

  1. Step 1: Identify the value of letter

    The variable letter is "b".
  2. Step 2: Match letter in switch cases

    "b" matches the second case with "b", "c", "d" which prints "Consonant".
  3. Final Answer:

    Consonant -> Option C
  4. Quick Check:

    "b" in second case = Consonant [OK]
Hint: Check which case list contains the value [OK]
Common Mistakes:
  • Confusing vowels and consonants
  • Forgetting to include default case
  • Assuming no output if no exact match
4.

Find the error in this Swift switch statement:

let number = 3
switch number {
case 1, 2
    print("One or Two")
case 3:
    print("Three")
default:
    print("Other")
}
medium
A. Missing colon after case 1, 2
B. Missing default case
C. Cannot use compound cases with integers
D. Missing parentheses around 1, 2

Solution

  1. Step 1: Check syntax of each case

    Each case must end with a colon (:). The first case is missing it.
  2. Step 2: Verify other parts

    Default case is present; compound cases with integers are allowed; parentheses are not needed.
  3. Final Answer:

    Missing colon after case 1, 2 -> Option A
  4. Quick Check:

    Case lines must end with colon [OK]
Hint: Look for missing colons after case labels [OK]
Common Mistakes:
  • Forgetting colon after case
  • Thinking parentheses are required
  • Believing compound cases disallow integers
5.

Given this Swift code, what will be the output?

let grade = "B"
switch grade {
case "A", "B", "C":
    print("Pass")
case "D", "F":
    print("Fail")
case "I", "W":
    print("Incomplete or Withdrawn")
default:
    print("Unknown grade")
}
hard
A. Incomplete or Withdrawn
B. Pass
C. Fail
D. Unknown grade

Solution

  1. Step 1: Identify the value of grade

    The variable grade is "B".
  2. Step 2: Match grade in compound cases

    "B" matches the first case "A", "B", "C" which prints "Pass".
  3. Final Answer:

    Pass -> Option B
  4. Quick Check:

    "B" in first case = Pass [OK]
Hint: Match value to any in compound case list [OK]
Common Mistakes:
  • Assuming "B" is a fail grade
  • Ignoring default case
  • Confusing case groups
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