[swift] switch 문에서의 패턴 매칭
Swift의 switch
문은 여러 값들에 대한 조건을 처리하기 위해 사용됩니다. switch
문은 각각의 case에서 패턴 매칭을 통해 값을 비교하고 적절한 블록을 실행할 수 있게 해줍니다.
기본 문법
일반적인 switch
문의 기본 구조는 다음과 같습니다:
switch value {
case pattern1:
// pattern1에 매칭될 때 실행되는 블록
case pattern2:
// pattern2에 매칭될 때 실행되는 블록
default:
// 어떤 case에도 매칭되지 않을 때 실행되는 블록
}
여기서 value
는 비교할 값이고 pattern
은 비교할 패턴입니다. 패턴은 다양한 형태로 작성할 수 있으며, 각각의 case에서 다른 패턴을 사용할 수도 있습니다.
패턴 매칭 예제
각각의 case에서 필요한 패턴을 사용하여 switch
문을 작성할 수 있습니다. 다음은 몇 가지 패턴 매칭의 예제입니다:
값 비교
var number = 5
switch number {
case 0:
print("0입니다.")
case 1...5:
print("1부터 5 사이의 값입니다.")
case 6, 7, 8:
print("6, 7, 8 중 하나입니다.")
default:
print("다른 값입니다.")
}
옵셔널 값 비교
var optionalNumber: Int? = 10
switch optionalNumber {
case nil:
print("값이 없습니다.")
case let value?:
print("값이 있습니다: \(value)")
}
튜플 비교
var point = (x: 10, y: 5)
switch point {
case (0, 0):
print("원점입니다.")
case (_, 0):
print("x축 위의 점입니다.")
case (0, _):
print("y축 위의 점입니다.")
case (let x, let y):
print("x: \(x), y: \(y)")
}
결론
switch
문은 Swift에서 다양한 값을 패턴에 맞게 처리하기 위한 강력한 도구입니다. 패턴 매칭을 사용하여 조건을 처리하고 적절한 블록을 실행할 수 있습니다. 이를 통해 코드의 가독성과 유지보수성을 높일 수 있습니다.
자세한 내용은 Swift 공식 문서를 참고하세요.