基本型別 | 大小 | 最小值 | 最大值 |
boolean | ----- | ----- | ------ |
char | 16-bit | Unicode 0 | Unicode 2^16-1 |
byte | 8-bit | -128 | +127 |
short | 16-bit | -2^15 | +2^15-1 |
int | 32-bit | -2^31 | +2^31-1 |
long | 64-bit | -2^63 | +2^63-1 |
float | 32-bit | IEEE754 | IEEE754 |
double | 64-bit | IEEE754 | IEEE754 |
void |
表格里的^代表的是次方;
java采用unicode,2個字節(jié)來表示一個字符。
基本類型的包裝類
Integer 、Long、Short、Byte、Character、Double、Float、Boolean、BigInteger、BigDecmail
其中BigInteger、BigDecimal沒有相對應(yīng)的基本類型,主要應(yīng)用于高精度的運算,BigInteger 支持任意精度的整數(shù),
BigDecimal支持任意精度帶小數(shù)點的運算。
基本類型與包裝類型的異同:
1、在Java中,一切皆對象,但八大基本類型卻不是對象。
2、聲明方式的不同,基本類型無需通過new關(guān)鍵字來創(chuàng)建,而封裝類型需new關(guān)鍵字。
3、存儲方式及位置的不同,基本類型是直接存儲變量的值保存在堆棧中能高效的存取,封裝類型需要通過引用指向?qū)嵗?,具體的實例保存在堆中。
4、初始值的不同,封裝類型的初始值為null,基本類型的的初始值視具體的類型而定,比如int類型的初始值為0,boolean類型為false;
5、使用方式的不同,比如與集合類合作使用時只能使用包裝類型。