【发布时间】:2012-06-26 13:31:34
【问题描述】:
可能重复:
What is wrong in comparing a null with an object rather than an object with a null
我看到一些开发人员在 C# 中使用以下空对象检查:
if (null == myObject)
{
}
而不是:
if (myObject == null)
{
}
我更喜欢第二种说法,因为它(对我来说)从左到右自然地阅读。
为什么要使用第一个有什么理由吗?有任何性能优势,还是纯粹的味道?
【问题讨论】:
-
没有。我自己更喜欢第二个。
-
有一个类似的问题很重要。 myString.equals("") 而不是 "".equals(myString);第二个确保您永远不会尝试在空变量上调用函数。 myString 可以为 null 并在第一个崩溃,但 equals(null) 不会导致崩溃
-
我听说这些被称为“尤达条件”(如“null,我的对象是”):)
-
我不同意重复的标签。这个问题是针对 C# 和空值检查的。
-
我现在找到了一个更合适的副本。
标签: c#