Closed. This question does not meet Stack Overflow guidelines。它当前不接受答案。
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
2年前关闭。
在我正在做的一个更大的项目中,似乎在Integer上多次出现==比较,这导致了“错误”的行为。我想对其进行重构,但是当前在项目中使用的CheckStyle仅提供StringLiteralEqualityCheck(仅检查Strings上的==),并且对==进行常规搜索可以找到很多方式进行手动检查。
是否有人为CS解决了这个问题的工具或开源规则?
提前致谢
想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
2年前关闭。
在我正在做的一个更大的项目中,似乎在Integer上多次出现==比较,这导致了“错误”的行为。我想对其进行重构,但是当前在项目中使用的CheckStyle仅提供StringLiteralEqualityCheck(仅检查Strings上的==),并且对==进行常规搜索可以找到很多方式进行手动检查。
是否有人为CS解决了这个问题的工具或开源规则?
提前致谢
最佳答案
Checkstyle在这种情况下并没有真正的帮助,但是FindBugs(或者更好的是它的后继SpotBugs)可能会有所帮助。
此类检查的示例是:
Suspicious reference comparison to constant(SpotBugs version)
Suspicious reference comparison(SpotBugs version)
Suspicious reference comparison of Boolean values(SpotBugs version)
09-27 18:36