intellij-idea - 为什么 IntelliJ IDEA 优先比较常量?

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/

相关文章:

android - 如何从 Android Studio 中的 Assets 中读取文本文件?

python - 找到坡度最陡的点 python

php - 在 Laravel 迁移中更改列类型的最佳方法是什么?

ruby - 符号有什么用?

selenium - java.lang.NoClassDefFoundError : freema

laravel - 仅在 Laravel 中公开某些授权路由

android - JSONObject.put(string,string) 不工作

android - 完成其他 Activity 之前的所有 Activity

asp.net-mvc - 需要日期时间(+18 年)

google-api - Google Classroom API 修改附件