IDEA 建议翻转比较,例如 (object.method() == CONSTANT)
到 (CONSTANT == object.method())
但它没有给出一个原因。第二种方法真的更好吗?如果是,为什么?
我知道顺序对于短路运算符 &&
和 ||
很重要,但对于其他二元运算符,无论如何都必须评估函数。我在这里缺少什么?
我使用的是 IntelliJ IDEA 2016 1.3。
最佳答案
IntelliJ IDEA 不会首先“偏好”常量。有两个检查,“比较左侧的常量”和“比较右侧的常量”,默认情况下都是禁用的。如果您看到像 object.method() == CONSTANT
这样的代码突出显示为警告,那么它已在您的项目代码样式中启用,您应该询问配置您的项目样式的人的推理。一些代码风格更喜欢将常量放在左边,以确保如果有人不小心使用 =
而不是 ==
,代码将无法编译,因为您无法分配为常数。
还有一个意图 Action 来翻转任何比较操作。意图操作是可用于自动执行某些代码编辑操作的工具。它们的可用性并不表示 IntelliJ IDEA 方面的任何偏好;它们只是用于编辑代码的工具。
https://stackoverflow.com/questions/38077225/