관리 메뉴

김종권의 iOS 앱 개발 알아가기

[iOS - swift] Dictionary에서 default값 설정 방법 (딕셔너리 디폴트 값) 본문

iOS 응용 (swift)

[iOS - swift] Dictionary에서 default값 설정 방법 (딕셔너리 디폴트 값)

jake-kim 2024. 5. 1. 01:57

딕셔너리에서의 디폴트 값

  • 딕셔너리 인스턴스의 value값에 특정 값을 추가하고 싶은 경우, key값이 존재하지 않을 여지가 있기 때문에 아래처럼 컴파일 에러가 발생
var dict = ["a": 1, "b": 2]

["a", "b", "c"]
    .forEach { char in
        dict[char] += 1 // Value of optional type 'Int?' must be unwrapped to a value of type 'Int'
    }
  • dict에 "c"키값을 새로 만들어서 1 값이 입력되게끔 하고 싶은 경우?
    • 아래처럼 nil을 체크하여 구현이 가능하지만 번거로운 형태
["a", "b", "c"]
    .forEach { char in
        if dict[char] == nil {
            dict[char] = 1
        } else {
            dict[char]! += 1
        }
    }
  • 여기서 value부분에 default키워드를 사용하면 간략하게 표현이 가능
["a", "b", "c"]
    .forEach { char in
        dict[char, default: 0] += 1
    }

print(dict) // ["a": 2, "b": 3, "c": 1]
Comments