iOS
[iOS] 2026.01.06 Dictionary
ioskkt
2026. 1. 6. 10:47
딕셔너리를 옵셔널 바인딩 해보려다가 막혔던 부분.
var dictionary: [Int: Int] = [:]
// 딕셔너리의 값을 꺼낼 때 기본적으로 모두 Optional.
// 그래서 옵셔널 바인딩을 하려고 시도.
guard let tempValue = dictionary[1] else { return } // 첫번째 방법 : 값이 없으므로 nil이 반환되어 return됨.
let tempValue = dictionary[1] ?? 0 // 두번째 방법 : 값이 없지만 default로 0이 반환됨 but 실제 값은 없음.
-> 두 방법 모두 옵셔널은 제거가 되지만 해당 키에는 실제 값이 없음.
// 딕셔너리의 서브스크립트 활용
let tempValue = dictionary[1, default: 0] // key1 의 값을 불러오되, 값이 없는 경우 0 반환, but 실제 값이 없는 상태.
let tempValue2 = dictionary[1, default: 0] + 1 // 0 + 1 = 1
dictionary[1, default: 0] += 1 // dictionary[1] = Optional(1)
dictionary[1, default: 0] = 10 // dictionary[1] = Optional(10)