Swift/정보 공유

[Swift] fallthrough에 대해

언클린 2020. 2. 9. 11:35
728x90

이번에는 fallthrough에 대해 알아보겠습니다. 저도 처음에 Swift언어에서 접하게 되었는데 생각 외로 많이 사용하게 되는 것 같습니다.

(중복적인 코드를 쓰지 않기 위해 여러 출력을 위해 등등)

예제를 보시면서 이해해 보겠습니다.


1.fallthrough 

fallthrough는 해당 케이스의 처리를 실행 후 바로 밑의 처리를 실행하게 됩니다. 

enum State {

    case off

    case on

    case waiting

    case start

    case end

}

 

let state: State = .start

 

switch state {

case .off:

    print("off state")

case .on:

    print("on state")

case .waiting:

    print("waiting state")

case .start:

    fallthrough

case .end:

    print("precessing")

}

result: precessing

한 가지 예를 더 보겠습니다.

var water = 0

 

switch water {

case 0:

    water += 10

    fallthrough

case 1:

    water += 10

    fallthrough

case 2:

    water += 10

    fallthrough

default:

    print(water)

}

result: 30


환경 

Xcode 11.3

Swift 5

728x90