首頁技術(shù)文章正文

Java的變量的數(shù)據(jù)類型有哪些

更新時間:2019-07-02 來源:黑馬程序員 瀏覽量:

Java是一門強類型的編程語言,它對變量的數(shù)據(jù)類型有嚴格的限定。在定義變量時必須聲明變量的類型,在為變量賦值時必須賦予和變量同一種類型的值,否則程序會報錯。在Java中變量的數(shù)據(jù)類型分為兩種,即基本數(shù)據(jù)類型和引用數(shù)據(jù)類型。Java中所有數(shù)據(jù)類型如圖。

 

java變量數(shù)據(jù)類型

其中,8種基本數(shù)據(jù)類型是Java語言內(nèi)嵌的,在任何操作系統(tǒng)中都具有相同大屬性,而引用數(shù)據(jù)類型是在Jawa程序中由編程人員自己定義的變量類型。下面我們介紹java中的基本數(shù)據(jù)類型變量。


1、整數(shù)類型變量

整數(shù)類型變量用來存儲整數(shù)數(shù)值,即沒有小數(shù)部分的值。在Java中,為了給不同大小范圍內(nèi)的整數(shù)合理地分配存儲空間,整數(shù)類型分為4種不同的類型:字節(jié)型(byte)、短整型(short),整型(int)和長整型(long),4種類型所占存儲空間的大小以及取值范圍如下圖所示。

1562050605782_java整數(shù)類型.jpg

 

上圖中列出了4種整數(shù)類型變量所占的空間大小和取值范圍。其中,占用空間指的是不同類型的變量分別占用的內(nèi)存大小,如一個int類型的變量會占用4個字節(jié)大小的內(nèi)存空間。取值范圍是變量存儲的值不能超出的范圍,如一個byte類型的變量存儲的值必須是-27~27-1之間的整數(shù)。

在為一個long類型的變量賦值時需要注意一點,所賦值的后面要加上一個字母L(或小寫1),說明賦值為long類型。如果賦的值未超出int型的取值范圍,則可以省略字母L(或小寫1)。具體示例如下:

 

long num=2200000000L; //所賦的值超出了int型的取值范圍,后面必須加上字母L

long num=198L;      //所賦的值未超出int型的取值范圍,后面可以加上字母L

long num=198;      //所賦的值未超出int型的取值范圍,后面可以省略字母 L 

 


 

2、浮點數(shù)類型變量

浮點數(shù)類型變量用來存儲小數(shù)數(shù)值。在Java中,浮點數(shù)類型分為兩種:單精度浮點數(shù)( float)和雙精度浮點數(shù)( double)。 double型所表示的浮點數(shù)比 float型更精確,兩種浮點數(shù)所占存儲空間的大小以及取值范圍如下圖所示。

 

 

java浮點數(shù)類型變量

上圖中,列出了兩種浮點數(shù)類型變量所占的空間大小和取值范圍,在取值范圍中,E表示以10為底的指數(shù),E后面的+號和-號代表正指數(shù)和負指數(shù),例如1.4E-45表示1.4*10-45。

 

在Java中,一個小數(shù)會被默認為 double類型的值,因此在為一個float類型的變量賦值時需要注意一點,所賦值的后面一定要加上字母F(或者小寫f),而為 double類型的變量賦值時,可以在所賦值的后面加上字符D(或小寫d),也可以不加。具體示例如下:

 

float f=123.4f;  //為一個float類型的變量賦值,后面必須加上字母f  

double d1=100.1; //為一個doub1e類型的變量賦值,后面可以省略字母d 

double d2=199.3d; //為一個doub1e類型的變量賦值,后面可以加上字母d

 

 

3.字符類型變量

字符類型變量用于存儲個單一字符,在java中用char表示。Java中每個char類型的字符變量都會占用2個字節(jié)。在給char類型的變量賦值時,需要用一對英文半角格式的單引’’號把字符括起來,如’a’,也可以將char類型的變量賦值為0~65535范圍內(nèi)的整數(shù),計算機會自動將這些整數(shù)轉(zhuǎn)化為所對應(yīng)的字符,如數(shù)值97對應(yīng)的字符為’a’。下面的兩行代碼可以實現(xiàn)同樣的效果

char c='a';  //為一個char類型的變量賦值字符a

char ch=97;  //為一個char類型的變量賦值整數(shù)97,相當(dāng)于賦值字符a

 

 

4.布爾類型變量

布爾類型變量用來存儲布爾值,在Java中用 boolean表示,該類型的變量只有兩個值,即tue和 false。具體示例如下:

 

boolean flag=false;   //聲明一個boo1ean類型的變量,初始值為false

flag=true;          //改變f1ag變量的值為true

推薦閱讀:
java語言中的常見的轉(zhuǎn)義字符





分享到:
在線咨詢 我要報名
和我們在線交談!