In Swift, the switch
statement doesn’t automatically fall through to the next case
. Each case
block is designed to execute only the code within that case, and it doesn’t continue to the next case
unless you use the fallthrough
keyword.
If you don’t want Swift to break automatically after each case and you want to intentionally allow fall-through behavior, you can use the fallthrough
statement to explicitly specify this behavior. Here’s an example:
let number = 1
switch number {
case 1:
print("It's one")
fallthrough
case 2:
print("It's one or two")
default:
print("It's something else")
}
In this code, when number
is 1, it will print both “It’s one” and “It’s one or two” because of the fallthrough
statement.
If you don’t include fallthrough
, Swift will execute only the code in the matching case
and then exit the switch
statement. So, by default, Swift breaks after each case
, and you need to explicitly use fallthrough
if you want to allow fall-through behavior. This is different to, let’s say, Java where you have to explicitly use break
if you want to only execute code in the matching case.