Inspectopedia Help

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

By default bundled with:

IntelliJ IDEA 2024.1, Qodana for JVM 2024.1,

Can be installed with plugin:

Java, 241.14841

Last modified: 12 March 2024