gpt4 book ai didi

java - 这种代码增强或实践称为什么? (null == conn) 相对于 (conn == null)

转载 作者:行者123 更新时间:2023-12-03 22:18:08 27 4
gpt4 key购买 nike

我正在尝试报告一些代码增强,但是,我不太确定这个项目叫什么。基本上,它不是执行 conn == null,而是执行 null == conn 以提高可读性。

之前:

        if (conn == null){            
if (log.isDebugEnabled()){
log.debug("Failed to get a DB Connection");
}
}

之后:

        if (null == conn){            
if (log.isDebugEnabled()){
log.debug("Failed to get a DB Connection");
}
}

最佳答案

这不是为了可读性,而是为了防止意外分配而不是比较。

如果你不小心写了:

if (conn = null)

在 C 或 C++ 中,这会将 conn 设置为 null,然后使用该值作为条件。尽管在 Java 中没有必要,但它已被转移到 Java 中。

反过来,编译器将其捕获为尝试分配给常量,因此它甚至不会编译。

至于它叫什么,我没见过具体的名字。只要您解释一下,您就可以随意调用它。我喜欢 Accidental assignment avoidance,因为我可以将其缩短为 triple-a

关于java - 这种代码增强或实践称为什么? (null == conn) 相对于 (conn == null),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6501390/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com