-1
我正在編寫一些測試代碼,發現一個奇怪的東西,並仍然困惑如何發生這種情況?整數與==的比較
Integer i1 = 220;
Integer i2 = 220;
System.out.println(i1 == i2);
打印效果與預期假。但
Integer i1 = 20;
Integer i2 = 20;
System.out.println(i1 == i2);
打印真正,但兩者是不同的引用指的是不同的對象(我認爲)。
第二段代碼打印true?
或指http://stackoverflow.com/questions/13098143/java-integer-constant-pool –
一般的教訓,雖然是:不這樣做。 – biziclop
我明白,平等是爲了比較,但爲什麼要混淆? – Batty