- 01Setting up (what you'll need)
- 02Your first output (println)
- 03Variables (val and var)
- 04Type annotations and basic types
- 05Branching (the if expression)
- 06Repeating (the for expression)
- 07Writing your own function
- 08Repeating (the while loop)
- 09Working with lists (List)
- 10Working with maps (Map)
- 11Classes (object orientation)
- 12case class
- 13Inheritance and traits
- 14Pattern matching (the match expression)
- 15The Option type (null safety)
- 16Higher-order functions, map and filter
- 17object (singletons)
- 18Strings and string interpolation
- 19for comprehensions
- 20[Project] Build a small inventory system
Pattern matching (the match expression)
This lesson covers pattern matching, one of Scala's most powerful features.
Writing value match { case pattern1 => ... case pattern2 => ... } branches according to the pattern of a value. It is more flexible than a switch statement and lets you combine all sorts of conditions.
The sample code prints a different message per day using a match expression on a number. case _ is the wildcard pattern meaning "everything else".
A common early stumble is forgetting case _, the default case. If an unexpected value arrives and no branch matches, you get a runtime exception (MatchError).
In professional work, pattern matching is a central feature that appears throughout Scala code, letting you branch on the shape of your data concisely.
๐งช This site can't compile or run Scala directly, so it checks on the spot whether what you typed matches the reference code (scoring happens entirely in your browser โ nothing is sent anywhere).
