728x90
반응형
원래 옵셔널 바인딩은 아래처럼 if let(var)문이나 guard let(var)문을 사용하여 할당하고 사용해야한다.
var name: String?
var age: Int?
let isLoadingDone: Bool = false
if isLoadingDone {
name = "홍길동"
age = 65
}
if let name, let age {
print("\(age)세 \(name)님 반갑습니다")
} else {
print("자료를 확인할 수 없습니다")
}
하지만 아래처럼 사용할 수도 있다.
// 다음과 같이 옵셔널 바인딩을 단축할 수 있다.
let tempName: String = name ?? "알 수 없는 이름" // 기본값을 할당한다.
let tempAge: Int = age ?? 0 // 여기도 마찬가지로 기본값을 할당한다.
print("\(tempAge)세 \(tempName)님 반갑습니다")
var aaaName = tempName
var aaaAge = tempAge
print(aaaName) // 알 수 없는 이름
print(aaaAge) // 0
print(type(of: aaaName)) // String
print(type(of: aaaAge)) // Double
6번째 줄부터의 내용처럼 다른 변수에 또 넣어서 쓸 수 있다.
728x90
반응형
'공부 > Apple' 카테고리의 다른 글
[스위프트] 복잡한 함수의 사용 (0) | 2023.12.19 |
---|---|
[스위프트] nil과 null 차이 (0) | 2023.12.15 |
[스위프트] 옵셔널 바인딩을 간단하게 하는 방법 (0) | 2023.12.14 |
[SwiftUI] 화면에 요소 보이기 숨기기 (0) | 2023.12.06 |
[SwiftUI] Grid에서 두칸씩 잡아주기 (0) | 2023.12.06 |