-
(Swift) 조건문 정리Programing Language/Swift 2019. 10. 10. 11:33728x90반응형
1. if-else 구문
- if-else 구문의 기본 형태
- if만 단독으로 사용해도되고, else, else if 와 조합해서 사용 가능합니다.
- if 뒤의 조건 값에는 Bool 타입의 값만 위치해야 합니다.
- 조건을 감싸는 소괄호는 선택사항입니다.
let someInteger = 100 if someInteger < 100 { print("100 미만") } else if someInteger > 100 { print("100 초과") } else { print("100") } // 100 // 스위프트의 조건에는 항상 Bool 타입이 들어와야 합니다. // someInteger는 Bool 타입이 아닌 Int 타입이기 때문에 // 컴파일 오류가 발생합니다. //if someInteger { }
2. switch 구문
-
스위프트의 switch 구문은 다른 언어에 비해 굉장히 강력한 힘을 발휘합니다.
-
기본적으로 사용하던 정수타입의 값만 비교하는 것이 아니라 대부분의 스위프트 기본 타입을 지원하며, 다양한 패턴과 응용이 가능합니다.
- 스위프트의 다양한 패턴은 Swift Programming Language Reference의 패턴(아래링크)에서 확인할 수 있습니다.
- 각각의 case 내부에는 실행가능한 코드가 반드시 위치해야 합니다.
- 매우 한정적인 값(ex. enum의 case 등)이 비교값이 아닌 한 default 구문은 반드시 작성해야 합니다.
- 명시적 break를 하지 않아도 자동으로 case마다 break 됩니다.
- fallthrough 키워드를 사용하여 break를 무시할 수 있습니다.
- 쉼표(,)를 사용하여 하나의 case에 여러 패턴을 명시할 수 있습니다.
// 범위 연산자를 활용하면 더욱 쉽고 유용합니다 switch someInteger { case 0: print("zero") case 1..<100: <- 범위도 넣을 수 있다. print("1~99") case 100: print("100") case 101...Int.max: print("over 100") default: print("unknown") } // 100 // 정수 외의 대부분의 기본 타입을 사용할 수 있습니다 switch "yagom" { case "jake": print("jake") case "mina": print("mina") case "yagom": print("yagom!!") default: print("unknown") } // yagom!!
728x90반응형'Programing Language > Swift' 카테고리의 다른 글
(Swift) 옵셔녈[Optional] 정리 1/2 (0) 2019.10.10 (Swift) 반복문 (0) 2019.10.10 (Swift) 함수 사용법 정리 (0) 2019.10.10 (Swift) 컬렉션 타입 [Array, Dictionary, Set] (0) 2019.10.10 (Swift) 기본데이터 타입 [총정리] (0) 2019.10.09