StringBuilder、StringBuffer、および java.util.concurrent.atomic パッケージのインスタンスに対する equals() 呼び出しを報告します。
equals() メソッドはこれらのクラスではオーバーライドされていないため、2 つのオブジェクトの中身が同じであっても、false を返す可能性があります。
参照の等価比較を意図している場合は、混乱を避けるために == を使用することをお勧めします。
StringBuilder、StringBuffer、AtomicBoolean、AtomicInteger、AtomicBoolean および AtomicLong 用のクイックフィックスを使用できます。
このクイックフィックスはインスタンスのいずれかが null の場合にセマンティクスを変更する場合があります。
例:
public void test(StringBuilder sb1, StringBuilder sb2) {
boolean result = sb1.equals(sb2); // 疑わしいコード
}
クイックフィックス適用後:
public void test(StringBuilder sb1, StringBuilder sb2) {
boolean result = sb1.toString().equals(sb2.toString());
}
2017.2 の新機能です