public class Test {
public static void main(String[] args) {
Integer i1 = 100;
Integer i2 = 100;
if (i1 == i2) {
System.out.println("i1==i2");
} else {
System.out.println("i1!=i2");
}
Integer i3 = 200;
Integer i4 = 200;
if (i3 == i4) {
System.out.println("i3==i4");
} else {
System.out.println("i3!=i4");
}
}
}
/**
* i1==i2;
* i3!=i4;
*/
java “==”灝辨槸姣旇緝寮曠敤錛屾病鏈夐噸杞借繃,鑰岀敱浜?128鑷?27鍐呯殑Interger閮芥槸鍚屼竴涓璞″紩鐢紝
鎵浠ョ涓涓瘮杈冨紡true 涔嬪鐨処nterger 鍒欎笉鏄悓涓涓璞★紝鎵浠ユ瘮杈冧負false
閲嶈澆鐨勫簲璇ユ槸equals錛堬級鏂規硶錛屾墍浠ュ鏋滅敤equals鏉ユ瘮杈冨簲璇ラ兘涓簍rue.
鍦↗DK婧愮爜涓璉nteger綾繪湁涓涓唴閮ㄧ被IntegerCache錛屽畠榛樿鍒涘緩浜嗕竴涓?128~127鐨処nteger瀵硅薄鏁扮粍銆?
鍙姣旇緝鐨勬槸鍦ㄨ繖256涓暟鍐咃紝灝辯洿鎺ュ湪瀵硅薄姹犻噷鏌ユ壘騫惰繑鍥炶瀵硅薄銆?
榪欐槸Java澶勪簬鎬ц兘鐨勮冭檻錛岀洰鐨勬槸鑺傜渷鍐呭瓨銆?
鑷充簬鑼冨洿涔嬪鐨勶紝涓嶅悓鐨勫紩鐢ㄥ氨涓嶇浉絳変簡銆?nbsp;