八種基本數據類型的大小,以及他們的封裝類


基本類型

大小(字節)

默認值

封裝類

byte

1

(byte)0

Byte

short

2

(short)0

Short

int

4

0

Integer

long

8

0L

Long

float

4

0.0f

Float

double

8

0.0d

Double

boolean

-

false

Boolean

char

2

\u0000(null)

Character

  有的書也說是9中基本數據類型,包括了void。

  基本類型所占的存儲空間是不變的:這種不變性也是java具有可移植性的原因之一。

  基本類型是放在棧中,直接存儲值。

  所有數值類型都有正負號,沒有無符號的數值類型。

 

  注:

  1.int是基本數據類型,Integer是int的封裝類,是引用類型。int默認值是0,而Integer默認值是null,所以Integer能區分出0和null的情況。一旦java看到null,就知道這個引用還沒有指向某個對象,再任何引用使用前,必須為其指定一個對象,否則會報錯。

  2.基本數據類型在聲明時系統會自動給它分配空間,而引用類型聲明時只是分配了引用空間,必須通過實例化開辟數據空間之后才可以賦值。數組對象也是一個引用對象,將一個數組賦值給另一個數組時只是復制了一個引用,所以通過某一個數組所做的修改在另一個數組中也看的見。

 

  雖然定義了boolean這種數據類型,但是只對它提供了非常有限的支持。在Java虛擬機中沒有任何供boolean值專用的字節碼指令,Java語言表達式所操作的boolean值,在編譯之后都使用Java虛擬機中的int數據類型來代替,而boolean數組將會被編碼成Java虛擬機的byte數組,每個元素boolean元素占8位”。這樣我們可以得出boolean類型占了單獨使用是4個字節,在數組中又是1個字節。使用int的原因是,對於當下32位的處理器(CPU)來說,一次處理數據是32位(這里不是指的是32/64位系統,而是指CPU硬件層面),具有高效存取的特點。


免責聲明!

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



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