检查两个值中是否有一个为null而另一个为n't的简洁方法

本文关键字:另一个 方法 简洁 null 两个 检查 有一个 是否 | 更新日期: 2023-09-27 18:04:34

有时我需要验证两个值中,一个 null,而另一个不是。如此:

(a != null && b == null) || (a == null && b != null)

但是当变量名较长时,它就会变得混乱,就像对象上的嵌套属性一样。为此,创建辅助函数是一个不错的选择,但是是否有更简洁的内联语法来编写它?

检查两个值中是否有一个为null而另一个为n't的简洁方法

试试这个:

(a == null) != (b == null)

注意,如果您的类覆盖了operator ==,则可能会出现问题。下面不使用operator ==

object.ReferenceEquals(a, null) == object.ReferenceEquals(b, null)