使用静态Object.Equals检查null的代码是否比使用==运算符或常规Object.Equals的代码更健壮?是不是后两种易受这样一种方式,检查空预期不工作正在被超越(如返回false时,比较值是零)?
换句话说,是这样的:
if (Equals(item, null)) { /* Do Something */ }
Run Code Online (Sandbox Code Playgroud)
比这更强大:
if (item == null) { /* Do Something */ }
Run Code Online (Sandbox Code Playgroud)
我个人觉得后面的语法更容易阅读.编写处理作者控件之外的对象的代码(例如库)时应该避免吗?是否应始终避免(检查为空时)?这只是头发分裂吗?