티스토리 뷰
[조건문 - if문]
- if문의 조건은 무조건 Bool 타입이어야 함
[조건문 - switch문]
- break 키워드를 사용해도 사용하지 않아도 됨
- fallthrough 키워드를 사용하면 case를 연속 실행할 수 있음
- 조건에 다양한 값이 들어갈 수 있음
- 조건에 열거형과 같이 명확히 한정적인 값이 들어가지 않으면 default를 반드시 작성해야 함
- 각 case에 범위 연산자를 사용할 수 있음
- 각 case에 여러 경우를 적을 수 있음. 쉼표로 구분
- 각 경우 다음에는 반드시 실행 가능한 코드가 위치해야 함
- where절을 사용하여 조건을 확장할 수 있음
1 2 3 4 5 6 7 8 9 10 11 | let tuple: (String, Int) = ("Hi", 13) switch(("Hi", 12)){ case ("Hi", 13): print("Correct") case ("Hi", let value): print("String Correct \(value)") case (let value, 13): print("Int Correct \(value)") default: print("False") } | cs |
위의 코드는 값 바인딩을 사용하여 지정된 조건 이외의 값을 실행문 안으로 가져와서 사용함
결과 : String Correct 12
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | let name: String = "Swift" let age: Int = 13 let isMale: Bool = true switch(name){ case "Swift" where isMale == false: print("1") case "Swift" where isMale == true: print("2") case "Swift" where age <= 15: print("3") case "Java": print("No") case "Python": print("Oh") default: print("default") } | cs |
위의 코드는 where절을 사용하여 조건을 확장함
결과 : 2
[반복문]
- continue, break 등의 키워드 사용 가능
- C 스타일의 반복문 사용 불가 (Swift 3.0에서 삭제됨)
[반복문 - for-in 구문]
- 반복적인 데이터, 시퀀스를 다룰 때 주로 사용
1 2 3 4 5 6 7 8 | let numbers: [Int] = [1,2,3,4,5,7,8] for i in 0..<numbers.count{ print(numbers[i]) } for number in numbers{ print(number) } | cs |
위의 코드는 for-in 구문을 사용하여 numbers 배열을 순차적으로 탐색하여 출력함
[반복문 - while 구문]
- 조건은 Bool 타입이어야 함
1 2 3 4 5 | var numbers: [Int] = [1,2,3,4,5,7,8] while(numbers.isEmpty){ print(numbers.first) numbers.removeFirst() } | cs |
위의 코드는 while문을 사용하여 numbers 배열이 비었는가를 판정하고 첫 번째 요소를 출력한 후 삭제하는 방법으로 배열의 모든 요소를 출력함
[반복문 - repeat-while 구문]
- 다른 언어의 do-while 구문과 똑같음
'Swift > 야곰의 스위프트' 카테고리의 다른 글
8장 옵셔널 (0) | 2018.02.03 |
---|---|
7장 함수 (0) | 2018.01.29 |
5장 연산자 (0) | 2018.01.29 |
4장 데이터 타입 고급 (0) | 2018.01.29 |
3장 데이터 타입 기본 (0) | 2018.01.29 |
댓글