조건문에는 if와 switch가 존재한다.
1. if 문
//Swift는 타입 검사를 아주 엄격하게 함
var age = 19
var student = ""
if age >= 8 && age < 14 {
student = "초등학생"
} else if age < 17 {
student = "중학생"
}
2. switch 문
//range 안에 포함되어 있는지 여부 확인
// range 1 -> 1...10 : 1부터 10까지
// range 2 -> 1..<10 : 1부터 9까지
switch age{
case 8..<14:
student = "초등학생"
case 14..<17:
student = "중학생"
}
반복문( for, while )
1. for 문
var country = ["대한민국", "미국", "브라질", "영국"]
var capitals = ["대한민국" : "서울", "미국" : "워싱턴D.C."
, "브라질" : "브라질리아", "영국", "런던"]
//for문 배열
for con in country {
print("저는 \\(con) 국적을 가진 사람입니다.")
}
//for문 딕셔너리
for (country, capital) in capitals {
print("\\(country)의 수도는 \\(capital)입니다.")
}
//단순 반복문
for i in 0..<100 {
print(i) // 0 ~ 99 까지 출력
}
//단순 반복문인데 i를 쓰지 않을때
for _ in 0..<10 {
print("Hello!") //10번 찍힘(0 ~ 9 까지 도는 동안)
}
// _ 키워드는 어디서나 변수 이름 대신에 사용할 수 있다.
2. while 문
var i = 0
while i < 100 {
i += 1
}
Optional(옵셔널)
- swift가 가지고 있는 가장 큰 특징
- 문자열이든 정수형 값이든 빈값을 nil 로 표현함 ( 일반 변수에는 nil 선언 불가 )
- 값이 있을수도 있고 없을수도 있는 변수 정의 할 때는 ? 를 붙여야함
- nil 값은 초기화 하지 않아도 기본으로 설정
let value : Int? //optional 변수 -> 그냥 변수랑 다름
// var value : String = nil -> 컴파일 에러!!
var value : String? = nil
Wrapping
optional은 기본적으로 wrap 되어있는 상태
→ optional로 선언되어 있는 변수는 기본적으로 값이 있는지 nil인지 wrap 되어있어 모르는 상태이므로
설령 변수에 value 값이 들어있다고 해도 바로 출력 되지 X
var str : String? = "Hello"
print(str)
//출력 결과 : Optional("Hello")
//str이 nil일 수도 있기 때문에 결과값이 바로 Hello가 출력되지 않음
//Hello만 출력 하려면?
//변수 안에 값이 있다면 ! 를 쓰면 그 값만 출력 할 수 있다.
print(str!) // 출력 결과 : Hello
'Swift' 카테고리의 다른 글
[Swift] var 와 let , method , 타입추론 (0) | 2022.02.10 |
---|---|
[Swift] 로딩페이지 띄우기, pageViewController (0) | 2021.03.25 |
[Swift] Object와 문자열 (0) | 2021.03.25 |
[Swift] Alert 띄우기 (0) | 2021.03.25 |
[Swift] ViewController와 button Event (0) | 2021.03.25 |