是否有推荐的方法(根据 .net Framework 指南)检查 null,例如:
if (value == null)
{//code1}
else
{//code2}
或者
if (value != null)
{//code2}
else
{//code1}
或者两个代码具有相同的性能?
这两个选项将执行相同的操作。
您应该使用语义上有意义的任何一个,或者任何一个导致更清晰的代码。
例如,如果非空操作更短,则将那个块放在第一位是有意义的,这样else
就接近if
.
没有性能差异,因此您应该努力提高可读性。
例如,将更“常规”的路径放在if
分支中,将“异常”的路径放在分支中通常是一个好主意else
。
性能上没有区别。我个人将更常见的情况放在最上面,将不太常见的情况放在else
分支中,但这只是偏好。这让我更容易看到更常见的场景。
没有性能差异。根据您的需要使用它们(可读性/可用性角度)。最合适/使用的块进入,if
可选/次要块进入else
.
两者都是相同的..为了便于阅读,您可以将代码块放在 IF 中,结果为真。在这种情况下 IF(value != null) 可读性更好,更明显:)