특정 조건에서 코드를 실행해야 하거나 실행하지 않아야 하는 경우 사용되는 것이 조건문이다. swift에서 조건문의 값은 꼭 Bool 타입이어야 한다. 또한 소괄호는 대부분 생략이 가능하다!
대표적인 조건문으로 if else 등의 키워드를 사용할 수 있다. else if는 갯수 제한 없이 여러개가 이어져도 상관 없으며, else 블럭은 없어도 괜찮다!
if를 사용하여 옵셔널 바인딩도 가능하다. 자세한 내용은 옵셔널 부분에서 다루도록 하겠다.
swift에서 break는 생략이 가능하다. 다른 언어에서 break 키워드를 빼서 의도적으로 여러 케이스를 연속으로 실행하도록 하는 기능을 사용하고싶을 경우 fallthrough 키워드를 사용한다. 비교될 값이 명확히 한정적인 값이 아니라면 default를 꼭 작성해줘야한다. 각 case에는 범위 연산자를 사용할 수도, where절을 사용하여 조건을 확장할 수도 있다.
swift의 switch문에서는 tuple matching을 지원한다. 또한 열거형을 입력으로 받을 경우 열거형의 모든 case를 정의해줘야한다. 만약 열거형에 case가 추가될 가능성이 있다면 switch문의 맨 마지막에 @unknwon 속성을 부여해주면 된다.