JAVA數據類型講解

java基本數據類型

在講解這個知識之前,我們先來明確下變量。
變量是什麼呢?
變量就是在內存中開闢一個空間在存儲數據,也就是說要存儲數據就得在內存中申請一個空間,而空間的分配則由系統根據變量的類型來決定的。
在JAVA中,有兩大數據類型:
1.基礎數據類型
2.引用數據類型

一.基礎數據類型

在JAVA裏,系統爲我們提供了八種基礎數據類型,分別爲六種數字類型(byte,short,int,long,float,double),一種字符類型(char),一種布爾類型(boolean)。

byte(字節型):

byte數據類型是8位的,帶有符號。
最小值是-128(-2^7),最大值是127(2^7-1),默認值是0.
byte是int類型的1/4大小,可以用來替代不超過以上範圍的整數來節約內存空間。

short(短整型):

short數據類型是16位的,佔2個字節,帶有符號。
最小值是-32768(-2^15),最大值是32767(2^15 - 1),默認爲0。
short也可以用來替代整型,它是整形的1/2大小。

int(整型):

int數據類型是32位的,佔4個字節,帶有符號。
最小值是-2,147,483,648(-2^31),最大值是2,147,485,647(2^31 - 1),默認值爲0。
一般使用的整型變量都使用的int類型。

long(長整型):

long數據類型是64位的,佔8個字節,有符號。
最小值是-9,223,372,036,854,775,808(-2^63);最大值是9,223,372,036,854,775,807(2^63 -1);
由於數字整數默認的是int類型,所以在定義長整型的時候通常會在數字後面加上大寫的L,ex:long num = 3L;

float(單精度浮點型):

float數據類型是32爲的,佔4個字節,用來存儲小數,但因爲小數默認是double類型,所以在定義float類型的時候需要這樣: float f = 1.4F;

double(雙精度浮點型):

double數據類型是64位的,佔8個字節,用來存儲小數,小數默認類型爲double。

char(字符型):

char類型是一個單一的字符,可以存儲任何字符。

boolean(布爾型):

boolean只有兩個值:true 和 false。
默認值爲false。

二.引用數據類型

類的構造方法創建了引用數據類型的變量,引用數據類型的類型一旦被聲明就不能被更改,我們常見的數組,字符串,對象都是引用數據類型。

這裏會涉及到引用數據類型在內存中存放的方式:
內存中有棧和堆(數據結構裏的知識),棧用來存儲基本數據類型,因爲基本數據類型大小是固定的;而堆則用來存儲引用數據類型,因爲引用數據類型的大小系統並不知道,而是根據我們定義的大小來分配。
而創建引用數據類型變量時,變量本身是存儲在棧裏的,而變量的值則是某個存儲在堆裏的對象的地址,從嚴格意義上來講,JAVA只有傳值而沒有傳址,JAVA所傳遞的只是變量本身的值,只不過引用類型的值是一個地址,跟C語言的傳址有本質的區別。

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