重複の可能性:
Javaで==演算子を使用してラッパーオブジェクトを比較する
javaバージョン1.6.0_26
SCJP試験準備のための本から:
メモリを節約するために、次の2つのインスタンス[-128と127からの短い整数、およびその他のいくつかのインスタンスですが、質問には関係ありません]ラッパーオブジェクト(boixngを介して作成)は、プリミティブ値が同じ。
私がしたこと:
次のように、-128から127までの2つの整数を比較するとします。
1. Integer i1 = 10;
2. Integer i2 = 10;
3. System.out.println(i1 == i2); // true
しかし、なぜ同じことが私たちに「偽」を与えるのか、それとも同じではないのかもしれません:
4. Integer i3 = new Integer(10);
5. Integer i4 = new Integer(10);
6. System.out.println(i3 == i4); // false
私の質問:
1)コードの1行目に、暗黙のボクシングを作成しますか?
2)コードの3行目と6行目で異なる結果が得られるのはなぜですか?