옵셔널값 추출 방법

쏘스야·2023년 4월 4일
0

ios 개발자의 첫걸음

목록 보기
28/61
/**
 옵셔널 타입 사용하기
 */
var numD: Int?
var str: String? = "안녕하세요"


// 1. 강제로 벗기기
// 절대 사용하면 안됨.
print(str)
print(str!) // 일반적으로 사용하진 않음

//print(numD!) // 에러

// 2. if문을 활용하기
if str != nil {
    print(str!)
}
if numD != nil {
    print(numD!)
}

// 3. 옵셔널 바인딩 (if let 바인딩) 중요!! - 자주사용
// 실제로 사용하는 방법
if let s = str { // s라는 상수에 담긴다면
    print(s)
}

if let n = numD {
    print(n)
}

var optionalNameA: String? = "홍길동"

if let nameA = optionalNameA {
    print(nameA)
}


// 실제 앱을 만들때 guard let 바인딩을 많이 사용
func aFunction(name: String?) {
    guard let n = name else { return }
    print(n)
}

aFunction(name: "he llo")

// 4. 닐 코얼레싱(Nil-Coalescing) 연산자를 사용하는 방법
// 코얼레싱 : 더 큰 덩어리로 합친다.

var serverName: String? = "서버명"

// 기본값을 제시함.(미인증사용자)
var userName = serverName ?? "미인증사용자"


var hello = "인사하겠습니다." + (str ?? "Say, Hi")
print(hello)

str = nil

print(str ?? "Say, Hi")
print(hello)
profile
개발자

0개의 댓글