黑馬程序員---java基礎加強---基本數據類型的自動拆裝箱

----------- android培訓java培訓、java學習型技術博客、期待與您交流! ------------

Java作爲面嚮對象語言,有人認爲所看到的都是對象,事實上,在Java SE 5之前,基本類型默認並不是採用對象存在的如果您想要把基本類型作爲對象來處理,就必須自行轉換,不過,在Java SE 5之後,爲基本數據類型提供了自動裝箱和拆箱功能,使得將基本類型轉換爲對象變得極其便捷。

裝箱的意思就是基本數據類型封裝成類,拆箱的意思是類轉換成基本數據類型。

自動的意思是java虛擬機會自動調用封裝類中的方法實現你需要的基本數據類型,而不用你手工進行裝換。

下面是一些練習例子:

自動裝箱:Integer num1 = 12;

自動拆箱:System.out.println(num + 13);

基本數據類型的對象緩存:Integer num1 = 12; Integer num2 = 12; System.out.println(num1 == num2);

Integer num3 = 129 ; Integer num4 = 129; System.out.println(num3 == num4);

自動裝箱時,對於值從-128-127之間的數,被裝箱後,會被放在內存中進行重用,第一個輸出true

如果超出了這個值的範圍就不會被重用的,所以每次new出來的都是一個新的對象,結果自然會是false。


Integer num5 = Integer.valueOf(12);

Integer num6 = Integer.valueOf(12);

System.out.println(num5 == num6);


八種基本數據類型:byte(一個字節)、char(兩個字節)、short((兩個字節)、int(四個字節)、long(八個字節)、float(四個字節)、double(八個字節)、boolean一個字節)

對應封裝的類爲:Byte、Character、Short、Integer、Long、Float、Double、Boolean

在java5之前,手動打包Integer data1= new Integer(10)這樣講基本數據類型轉成對象

在java5之後,自動打包Integer data2 =  10便可以實現轉換。可以對兩個對象進行比較data1.compareTo(data2);



下面是結果



----------- android培訓java培訓、java學習型技術博客、期待與您交流! ------------

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章