Loading...

How to not break automatically in switch statements in Swift?

question swift
Ram Patra Published on October 22, 2023

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.

Presentify

Take your presentation to the next level.

FaceScreen

Put your face and name on your screen.

ToDoBar

Your to-dos on your menu bar.

Ram Patra Published on October 22, 2023
Image placeholder

Keep reading

If this article was helpful, others might be too

question swiftui swift May 29, 2022 How to open a window in SwiftUI using NSWindowController?

Although many things in SwiftUI are idiomatic and straightforward, showing your view in a new window needs a bit of coding to do. Hence, this short post.

question swift August 9, 2020 How to iterate an array in reverse in Swift?

From Swift 5.0, you can use any of the following approaches to iterate an array in reverse.

question swift November 17, 2023 How do get the string value of an enum in Swift?

In Swift, to get the string value of an enum, you typically have a couple of approaches depending on the enum’s definition. Let’s go through them: