Number comparison using '==', instead of 'equals()'
Reports code that uses == or != instead of equals()
to test for Number
equality.
With auto-boxing, it is easy to make the mistake of comparing two instances of a wrapper type instead of two primitives, for example Integer
instead of int
.
Example:
void foo(Integer a, Integer b) {
final boolean bool = a == b;
}
If a
is known to be non-null, then it's safe to apply the "unsafe" quick-fix and get the result similar to the following:
void foo(Integer a, Integer b) {
final boolean bool = a.equals(b);
}
Inspection Details | |
---|---|
Available in: | IntelliJ IDEA 2023.3, Qodana for JVM 2023.3 |
Plugin: | Java, 233.SNAPSHOT |
Last modified: 13 July 2023