2012-04-16 21 views
-4

我々はJavaで次のコードを記述します。どのパラメータで '=='が等しいかどうかを判断しますか?

オブジェクト1 == object2はを。

演算子 '=='が等式を決定する基準は何ですか?

+1

http://google.com/?q=java+equality+operator –

+0

可能性の重複:** [Javaで文字列を比較する](http://stackoverflow.com/questions/1833538/comparing-strings -in-java)**と** [Javaの文字列:vs ==と等しい](http://stackoverflow.com/questions/3281448/strings-in-java-equals-vs)** –

+0

可能な[ java == vs Equals()confusion](** http://stackoverflow.com/questions/7520432/java-vs-equals-confusion) –

答えて

11

object1場合とobject2は次に参照型==チェックです。

詳しくは、Java言語仕様の15.21 Equality Operatorsを参照してください。

3

object1 == object2;は、両方がの場合、同じオブジェクトを参照するとtrueを返します。ときそれ以外の場合は、同じオブジェクト、の両方に言及真

など、両方のオブジェクトが同じ内容を持っているか、両方とも同じクラスのオブジェクトである場合、それはtrueを返しますことを前提としないでください。 object1object2が同じオブジェクトを両方の参照である場合

+0

**は同じオブジェクトへの参照です**。彼らは別の言及です。 –

+0

@ChristofferHammarströmはい、もちろんです。 –

+0

それで、それを修正してください。 –

3
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 
関連する問題