Search

replaceNil(with:)

사용용도

발행된 nil 값을 특정 값으로 대체해서 재발행

예제

example(of: "replaceNil") { // 1 ["A", nil, "C"].publisher .eraseToAnyPublisher() .replaceNil(with: "-") // 2 .sink(receiveValue: { print($0) }) // 3 .store(in: &subscriptions) } ——— 결과 ——— A - C
Swift
복사
닐 콜리싱 연산자 ?? 과는 미묘한 차이가 있다.
?? : 여전히 nil 일 수 있다.
replaceNil : 결코 결과물이 nil 일 수 없다.
.replaceNil(with: "-" as String?)
Swift
복사
따라서, 위 코드는 에러를 발생시킨다.