일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Xcode
- amazon
- 차이점
- 상속
- programmers
- CKEditor4
- guard
- bootstrap
- AWS
- DatePicker
- CodeIgniter
- jQuery
- switch-case
- pagination
- PHP
- class
- 사용법
- 제어문
- 클래스
- Spring
- 전의 의존성
- Java
- 2차원 객체배열
- 자료불러오기
- 함수
- SWiFT
- 객체
- Gradle
- EC2
- 옵셔널
Archives
- Today
- Total
not bad 한 개발
Swift - where절 본문
(인덕대학교 컴퓨터소프트웨어학과 iOS프로그래밍기초(21-2학기)한성현 교수님 강의 내용을 변형 및 요약 했습니다.)
where절
- where절은 for문 switch-case문에 기존의 조건에 또다른 조건을 추가하기위해 사용합니다.
- 배열을 결합하여 조건을 추가하는 것이 가능합니다.
(where절 예시1)
var onDo = 60
switch (onDo)
{
case 0...49 where onDo % 2 == 0:
print("Cold and even")
case 50...79 where onDo % 2 == 0:
print("Warm and even")
case 80...110 where onDo % 2 == 0:
print("Hot and even")
default:
print("onDo out of range or odd")
}
// onDo의 값이 60이기 때문에 두 번째 case문 이 실행되고 동시에 나누어서 나머지가 0이
// 나오기 때문에 ”Warm and even“이 출력됩니다.
(where절 예시2)
var high = 60
var temperature = -90
var result = ""
switch (high){
case 0...10 where temperature > -50:
result = "Troposphere 대류권"
case 10...50 where temperature < 0 && temperature > -50:
result = "Stratosphere 성층권"
case 50...80 where temperature < 0 && temperature > -80:
result = "Mesosphere 중간권"
default:
result = "Thermosphere 열권 or error"
}
print(result)
//높이와 온도의 입력 값에 따라 대기권 구조 중 어느 부분에 해당하는지 알려주는
//코드 입니다.
(where절 예시3)
var num1: [Int] = [1, 2, 3, 4, 5]
var num2: [(Int,Int)] = [(4,4), (6,-6), (11,2), (-8,0), (0,10)]
//for문 사용법
for test1 in num1 where test1 > 2 {
print(test1)
}
//for문과 switch-case 연계
for num3 in num2{
switch num3{
case let (test2,test3) where test2 == test3:
print("같은 수가 존재합니다.")
case let (test2,test3) where test2 == -test3:
print("양수 음수 모두 존재합니다.")
case (let test2,let test3) where test2 > test3:
print("\(test2) 는 \(test3) 보다 큽니다")
case (-8,_):
print("내용중 -8이 있습니다.")
case (_,10):
print("내용중 10이 있습니다.")
default:
break
}
}
'Swift' 카테고리의 다른 글
Swift - func(함수) (0) | 2021.10.09 |
---|---|
Swift - fallthrough문 (0) | 2021.10.04 |
Swift - switch-case문 (0) | 2021.10.04 |
Swift - if~let문 / guard~let문 비교 (0) | 2021.10.04 |
Swift - guard문 (0) | 2021.10.04 |
Comments