integer a = 127; // 將整形127裝箱物件integer b = 127; // 同上
system.out.print( a==b ); //
true
system.out.print(a.equals(b)); //
true
integer a = 127 實際為integer a =integer.valueof(127);
integer a = 128;integer b = 128;
system.out.print( a==b ); //
false
system.out.print(a.equals(b)); //
true
127與128 == 執行結果不同的原因在於,當值為小於乙個位元組時不會再占用另外乙個空間,也就是說第乙個**塊中a與b占用的是同一塊記憶體,所以為true,但是第二塊**中則不是
原始碼:
public
static
integer valueof(
int
i)
Java基礎系列(十九) 自動裝箱和自動拆箱
有些時候,我們需要把類似於int,double這樣的基本資料型別轉成物件,於是設計者就給每乙個基本資料型別都配置了乙個對應的類,這些類被稱為包裝器。包裝器整體來說分為四大種 number,number類派生出了integer,double,long,float,short,byte這六個小類分別代表...
java自動裝箱拆箱
因為看到幾個很有意思的面試題,關於裝箱拆箱的,錯得一頭霧水首先對於自動裝箱拆箱的定義,其實看這個你就明白了 integer i 100 被自動轉換成integer i integer.valueof 100 就叫做自動裝箱。而拆箱呢,比如 integer i1 1 integer i2 2 int ...
java自動裝箱拆箱
基本資料型別的自動裝箱 autoboxing 拆箱 unboxing 是自j2se 5.0開始提供的功能。一般我們要建立乙個類的物件例項的時候,我們會這樣 class a new class parameter 當我們建立乙個integer物件時,卻可以這樣 integer i 100 注意 不是 ...