Java的基本數據類型及其封裝類


Java的基本數據類型及其封裝類

一、8種基本數據類型

 

 

 

 

 

 

 

 

二、基本數據類型的包裝類及大小

三、基本數據類型和封裝類的區別

  1. 定義不同。封裝類是對象,基本數據類型不是;
  2. 使用方式不同。封裝類需要先new初始化,再通過JVM根據具體情況實例化后賦予定值,基本數據類型可以直接賦值,某些集合類型必須使用包裝類,不能使用基本數據類型,如ArrayList<Integer>
  3. 初始值不同。包裝類初始值默認為null,基本數據類型根據類型不同而值不同;
  4. 存儲方式和位置不用。封裝類分拆引用和實例,引用存儲在棧(stack),具體實例存儲在堆(heap),基本數據類型存儲在棧中(stack)。

四、為什么需要包裝類

  1. 包裝類封裝在java.lang包中;
  2. 基本數據類型沒有toString()方法;
  3. 編碼過程中只接收對象的情況,比如List中只能存入對象,不能存入基本數據類型;比如一個方法的參數是Object時,不能傳入基本數據類型,但可以傳入對應的包裝類; 比如泛型等等。

五、表現形式(具體如上表)

  1. 整數型有三種表現形式。分別是十進制、八進制(以0開頭)、十六進制(以0X或者0x開頭);
  2. 對於long型的數值,如果值大於int型數值最大值或者小於int型數值的最小值時,應該在數值的末尾加上L或者l(小寫的L),來表示該數值是long型的。如long num=2147483650L;
  3. 默認情況下,Java中的小數都是double型的,若要聲明一個小數是float型的,則需要在數值的末尾加上F或者f,注意,必須要加F或者f,否則會出錯。如float num=12.34F;
  4. char ch=’a’;和char ch=97;這兩個式子等價,其中97是字母a在Unicode表中的排序位置,取值范圍為0~65535(十進制),也即0x0000~0xffff(十六進制);
  5. Unicode編碼表中共有65535個字符,涵蓋了幾乎所有國家的所有語言所涉及的符號,各個符號在Unicode表中的位置依次對應於0x0000~0xffff。可以直接使用‘字符’或者字符在Unicode表中的位置表示某個字符,這兩種表示方式是等價的;
  6. int型數值和char型數值之間可以進行類型轉換,int賦值為Unicode表中的排序位置的數值;
  7. Java中還有一些轉義字符,轉義字符是以反斜線’\’開頭,后跟一個或多個字符。轉義字符具有特定的含義,不同於字符原有的意義。

   小結:關於char基本數據類型

  1. char型變量可以被賦值成單引號括住的單個字符(字符可以為Unicode表中的任意一個字符);
  2. char型變量可以被賦值成Unicode表中的字符所對應位置下標值;
  3. char型變量可以被賦值成轉義字符。

六、總結

每個包裝類的對象可以封裝一個相應的基本類型的數據,並提供了其它一些有用的方法。包裝類對象一經創建,其內容(所封裝的基本類型數據值)不可改變(類似於String類)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM