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