iOS/iOS 앱 개발 올인원 패키지 Online

[iOS] 패스트캠퍼스 챌린지 7일차 - Flow Control(2). Switch

듀IT 2021. 9. 12. 15:54

Switch Statement


let num = 10
switch num {
case 0:
    print("---> 0입니다")
case 0...10:
    print("---> 0부터 10 사이입니다.")
default:
    print("--->나머지 입니다")
    
}

결과: ---> 0부터 10 사이입니다.

case문의 조건에 range 문법을 적용할 수 있다.

조건이 만족하면 아래 case는 검토하지 않고 switch 구문을 탈출한다.

모든 case에 대하여 처리를 해줘야 한다. default를 이용할 수 있다.

 

다음과 같이 여러가지 case를 같이 사용할 수 있다.

let pet = "bird"

switch pet{
case "dog", "cat", "bird": 
    print("---> 집동물이네요?")
default:
    print("잘 모르겠습니다")
}

 

switch문에도 where 구문을 사용할 수 있다.

let num = 5
switch num{
case _ where num % 2 == 0:
    print("---> 짝수")
default:
    print("---> 홀수")
}

 

switch문에 Tuple도 사용할 수 있다.

let coordinate = (x: 0, y: 10)

switch coordinate{
case(0,0):
    print("원점이네요")
case(_, 0):
    print("x축이네요")
case(0, _):
    print("y축이네요")
default:
    print("좌표 어딘가")
}

결과: y축이네요

케이스 문에 다음과 같이 변수도 사용하여 이용할 수 있다. Swift의 switch 문이 다른 언어들에 비해 좀 더 강력한 기능을 지원하는 것 같다.

튜플, where, 여러 개의 case를 검사...

 

let coordinate = (x: 0, y: 10)

switch coordinate{
case(0,0):
    print("원점이네요")
case(let x, 0):
    print("x축이네요, x: \(x)")
case(0, let y):
    print("y축이네요, y: \(y)")
case(let x, let y) where x == y:
    print("x와 y가 같음, x,y: \(x),\(y)")
case (let x, let y):
    print("좌표 어딘가 x,y = \(x),\(y)")
}

결과: y축이네요, y: 10

오늘의 공부 모습

 

https://bit.ly/37BpXiC

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.