次のような式がある場合、
Integer x=500;
Integer y=500;
System.out.println(x==y);
オブジェクト参照を比較しているため、操作の結果は次のx==y
ようになります。false
x
これら2つの変数とy
次のようなループがある場合、
Integer x=0;
Integer y=0;
for(int i=0;i<2000;i++)
{
System.out.println((x==y)+" : "+x+++" : "+y++);
}
次に、 とのtrue
両方の値が になるまで表示します。他のすべての場合 (つまり、 と の値がインクリメントされた場合 - これらの変数の値が より大きい場合)。x
y
127
x
y
127
127
では、なぜこれが起こるのですか?この動作の仕様はありますか?