널 병합은 대략 다음과 같이 변환됩니다. return x, unless it is null, in which case return y
나는 종종 필요 return null if x is null, otherwise return x.y
나는 사용할 수있다 return x == null ? null : x.y;
나쁘지는 않지만 null
중간에있는 것이 항상 나를 괴롭 힙니다. 불필요한 것 같습니다. return x :: x.y;
다음과 같은 것을 선호합니다. 다음에 오는 ::
것이 앞에 오는 것이 아닌 경우에만 평가됩니다 null
.
I는 다음과 같이 볼이 거의 간결한 인라인 널 검사와의 혼합의 종류, 널 합체에 반대하지만 [요 약 C에서 # 이러한 조작이 없다고 특정한.
그러한 연산자가있는 다른 언어가 있습니까? 그렇다면 무엇이라고 부릅니까?
(저는 C #으로 메서드를 작성할 수 있다는 것을 알고 있습니다. 저는를 사용 return NullOrValue.of(x, () => x.y);
하지만 더 좋은 것이 있다면 저도보고 싶습니다.)