반응형
옵셔널은 nil을 할당할 수 있는지 알려주는 옵션이라고 볼 수 있다.
?로 기본적으로 옵셔널 사용이 가능하면 !로 암시적 옵셔널을 사용할 수도 있다.
// 옵셔널 - 값이 있을 수도 있고 없을 수도 있다.
// nil이 들어올 수 있다 없다 설정 가능
// 옵셔널 선언 예시
// 다른 데이터 타입과는 다름으로 다른 타입과 연산 불가
var b: Int? // 직관적인 표현법 - b에는 nill이 할당될 수 있다.
// nil을 넣어두고 접근 할 수 없는 옵셔널
var c: Int! // ?와는 조금 다른 옵셔널
// 옵셔널 추출 -> 옵셔널은 그냥 할당하면 다른 타입이라 에러 발생
// 그래서 if 문을 이용한다.
var a: String? = nil
if let ex:String = a{
print("a is \(ex)") // a에 string이 할당될때
} else{
print("a is nil") // a가 nil일때
}
// 강제 추출
// !를 이용해 값을 강제로 추출할 수 있으나 현재 nil 이기에 error 발생
print(a!)
반응형
'iOS > Swift' 카테고리의 다른 글
[Swift] 열거형 (0) | 2022.01.23 |
---|---|
[Swift] 구조체, 클래스, 프로퍼티, 프로퍼티 감시자 (0) | 2022.01.22 |
[Swift] 조건문, 반복문 (0) | 2022.01.22 |
[Swift] 함수 (0) | 2022.01.22 |
[Swift] Array, Dictionary, Set (0) | 2022.01.22 |