Javaで次のコードを書くと:
object1 == object2;
演算子「==」は何に基づいて等しいかを判断しますか?
object1
とobject2
が参照型である場合、 とが両方とも同じオブジェクトへの参照であるかどうかを==
チェックします。object1
object2
詳細については、Java 言語仕様の15.21 等価演算子を参照してください。
object1 == object2; 両方が同じオブジェクトへの参照である場合は true を返します。両方のオブジェクトの内容が同じである場合や、両方が同じクラスのオブジェクトである場合などに、true が返されると想定しないでください。
両方が同じオブジェクトを参照する場合はtrue 、それ以外の場合はfalse。
Object a = new Object();
Object b = new Object();
System.out.println(a==b); //not the same
Object c = new Object();
Object d = c; // d points to the same reference
System.out.prinlnt(c==d); // the same