包裝類與自動裝箱

2021-07-23 08:51:15 字數 1221 閱讀 5097

對應關係:

基本資料型別包裝類

bytebyte

booleanboolean

shortshort

charcharacter

intinteger

longlong

floatfloat

doubledouble

int包裝類integer:

integer i = new integer(1000);

system.out.println(integer.max_value);

system.out.println(integer.tohexstring(i));// 將i轉為十六進製制數的字串

integer i2 = new integer("234");// 把字串轉為數字

integer i3 = integer.parseint("234");// 把字串轉為數字

system.out.println(i2);

string str = i2 + "";// 將數字轉為字串

system.out.println(str);

system.out.println(i2.intvalue());//將包裝類i2轉為基本資料

自動裝箱與自動拆箱(auto-boxing   unboxing)

自動裝箱:基本型別就自動的封裝到與它相同型別的包裝中,如:integer i = 100;

本質上是,編譯器為我們們新增了integer  i = new integer(100);jdk5.0後出現自動裝箱。

自動拆箱:包裝類物件自動轉換成基本型別資料。如:int a = newinteger(100);

本質上,編譯器編譯時為我們新增了:int a = new integer(100).intvalue();

integer d = 1234;

integer d2 = 1234;

system.out.println(d == d2);//false

system.out.println(d.equals(d2));//true

integer d3 = 123;

integer d4 = 123;

system.out.println(d3==d4);//true[-128,127]之間的數,仍然當作基本資料型別來處理。

system.out.println(d3.equals(d4));//true

包裝類,自動裝箱與拆箱

int 整型 2147483648 2147483647 short 短整型 32768 32767 byte 位 128 127 long,boolean,byte,double,float 包裝類針對基本資料型別的物件轉換而實現的,如果要將基本資料型別以類的形式進行處理,那麼就要進行包裝 裝箱 ...

物件包裝器與自動裝箱

由於每個值分別包裝在物件中,所以arraylist的效率遠遠低於int 陣列。自動裝箱 拆箱 包裝器物件的比較使用equals 方法,不能使用 比較的是位址 包裝器類引用可以為null。如果在乙個表示式中混合使用integer double型別,integer值會自動拆箱,提公升為double,再裝...

包裝類自動裝箱和拆箱原理

包裝類的自動裝箱和拆箱是jdk1.5的新特性 一.首先 了解自動裝箱的過程 有兩種自動裝箱過程 第一種 128 127 之內 呼叫相應包裝類的valueof 例如 integer i 12 integer a 23 這些過程由jdk 編譯器自動裝箱完成的 即 會自動呼叫 integer.valueo...