Swift.org 의 문서를 보면, 기본 오퍼레이터 파트에 [Nil-Coalescing Operator][1]라는게 있어요.
[1]: Basic Operators — The Swift Programming Language (Swift 5.7)
코딩 중에 이 오퍼레이터가 떠올라서 적용해 봤어요. 왕 편해요
newGame.name = (nameField.text) ?? "새로운 전술"
nameField
에 값이 있으면 그걸 newGame
의 name
으로 적용하고 없으면 "새로운 전술"
이라는 이름을 주라는 거죠.
이걸 if let
으로 하면 코드가 엄청 지저분해 지는데, nil 병합 오퍼레이터를 쓰면 깔끔하게 처리되네요.
문법을 보면,
var unwrappedValue = optionalValue ?? defaultValue
기본 값엔 함수 리턴 호출해서 리턴값을 사용할 수도 있어요.
이거 원래 tenarary operatory에서 온 거 아시죠?
var unwrappedValue = optionalValue ?? defaultValue