티스토리 뷰

🍏/Swift

[Swift] if case 예제

eungding 2021. 1. 20. 11:09
반응형

if case문 쓸때마다 자주 헷갈려서 글을 남김 ✏️

예제는 이 글 가져왔고 여기 if case 뿐만아니라 guard case, for case에 대한 설명도 있어요!

enum Media {
  case book(title: String, author: String, year: Int)
  case movie(title: String, director: String, year: Int)
  case website(urlString: String)
}


let media = Media.movie(title: "Captain America: Civil War", director: "Russo Brothers", year: 2016)

위의 예제에서 media를 검사할때

예를들어 movie 타입인지만 확인하고 싶은 경우가 있습니다. 

 

 

즉 switch문에서 한 케이스만 검사하면 되는 경우,

switch문해주기 싫을 수가 있습니다. 

switch media {
case let .movie(title, _, _):
    print("This is a movie named \(title)")
default:
    break
}

 

이때 if case를 쓰기도 합니다. 

if case let .movie(title, _, _) = media {
    print("This is a movie named \(title)")
}

 

 

 

 

 

 

[ Reference ]

 

alisoftware.github.io/swift/pattern-matching/2016/05/16/pattern-matching-4/

 

Pattern Matching, Part 4: if case, guard case, for case

Making your Swift code more fun 🎉, magical ✨ and crunchier 👌

alisoftware.github.io

 

반응형
댓글