switch — exhaustiveness, ranges, tuples, where
Use powerful switch with exhaustive cases, numeric ranges, tuple matching, and where clauses.
switch — exhaustiveness, ranges, tuples, where is a free Swift Academy lesson on CoddyKit — lesson 2 of 3. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the Swift Academy learning path, one of 3 lessons in the course, and your progress syncs across the web and the CoddyKit app.
Intro
switch in Swift is expressive and safe: it is exhaustive and supports ranges, tuples, and where clauses.
Basic switch
Switch can match strings and must be exhaustive via cases or default.
let fruit = "apple"
switch fruit {
case "apple": print("Good fiber")
case "banana": print("Potassium")
default: print("Tasty fruit")
}Ranges
Use ranges like 90...100 (closed) and 80..<90 (half-open).
let score = 73
switch score {
case 90...100: print("A")
case 80..<90: print("B")
case 60..<80: print("C")
default: print("D or below")
}Tuple matching
Match tuples and bind values with let; add where for extra conditions.
let point = (x: 1, y: -1)
switch point {
case (0, 0): print("Origin")
case (let x, 0): print("On X-axis, x=\\(x)")
case (0, let y): print("On Y-axis, y=\\(y)")
case (1... , let y) where y < 0: print("x >= 1 and y negative")
default: print("Somewhere else")
}where clause
Use where to refine a pattern, keeping logic inline and readable.
let number = 12
switch number {
case let n where n % 2 == 0: print("\\(n) is even")
default: print("odd")
}Fallthrough behavior
Swift does not fall through cases by default, reducing bugs. Use fallthrough explicitly if needed.
Switch safety
Quick check: What makes Swift switch safer than many languages?
Recap
Recap: Swift switch is exhaustive, supports ranges and tuples, and can add where conditions; no implicit fallthrough.
Frequently asked questions
Is the “switch — exhaustiveness, ranges, tuples, where” lesson free?
Yes — the full text of “switch — exhaustiveness, ranges, tuples, where” is free to read here on the web, and the Swift Academy course includes 3 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the Swift Academy course, upgrade to CoddyKit PRO.
What will I learn in “switch — exhaustiveness, ranges, tuples, where”?
Use powerful switch with exhaustive cases, numeric ranges, tuple matching, and where clauses. You practise Swift Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start Swift Academy?
No prior experience is required. Swift Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 2 of 3, so you can start here or from the beginning and move at your own pace.
How long does the “switch — exhaustiveness, ranges, tuples, where” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this Swift Academy lesson?
Yes. Every Swift Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- if/else basics
- switch — exhaustiveness, ranges, tuples, where
- Loops — for-in, while, repeat-while