Inspectopedia Help

String comparison using '==', instead of 'equals()'

Reports code that uses of == or != to compare strings.

These operators determine referential equality instead of comparing content. In most cases, strings should be compared using equals(), which does a character-by-character comparison when the strings are different objects.

Example:

void foo(String s, String t) { final boolean b = t == s; }

If t 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(String s, String t) { final boolean b = t.equals(s); }

Inspection Details

Available in:

IntelliJ IDEA 2023.3, Qodana for JVM 2023.3

Plugin:

Java, 233.SNAPSHOT

Last modified: 13 July 2023