관리 메뉴

김종권의 iOS 앱 개발 알아가기

[iOS - swift] switch와 where을 같이 사용하는 방법 본문

iOS 기본 (swift)

[iOS - swift] switch와 where을 같이 사용하는 방법

jake-kim 2021. 2. 25. 00:08

case 문에 where사용 방법

  • for문과 동일하게 case문 뒤에 where을 사용하여 처리
switch personA?.job {
case let .engineering(year) where year == .junior :
    print("junior engineering")
default:
    print("others")
}

사용 예시

  • 예시) 특정 사람의 직업을 print하는 코드
  • 모델 정의
enum Job {
    case engineering(Year)
    case dentist(Year)
}

enum Year {
    case junior
    case senior
}

struct Person {
    let job: Job
}
  • case에 where 사용하여 print
var personA: Person? = nil

override func viewDidLoad() {
    super.viewDidLoad()
    personA = Person(job: .engineering(.junior))
}

private func printJobType() {
    switch personA?.job {
    case let .engineering(year) where year == .junior :
        print("junior engineering")
    case let .engineering(year) where year == .senior:
        print("senior engineering")
    default:
        print("dentist")
    }
}
Comments