Java15變數竟然沒什麼區別,八大基本資料型別你知道嗎?

lunvey發表於2021-02-11

變數是什麼?

 

變數是用來為不同資料型別在記憶體中分配的空間用來儲存該資料。

不同於python這樣的弱型別語言,變數宣告不需要定義資料型別,就和寫數學方程式一般,誰等於誰即可。而Java這個發展了多個版本的語言,從1.0開始就在java.lang這個包裡面明確定義了八種基本資料型別,直到Java15依然不曾改變。可見,基本資料型別的瞭解對於變數的使用而言是多麼必要!

 

基本資料型別:數字型別

 

說到數字型別,就不得不提java.lang下面的Number類。那麼現在來演示一下Double\Float\Integer\Long\Short,讓大家瞭解一下Java中怎麼定義這些數字型別,值得注意的是Java區分大小寫,Double不等於double。大寫對應的是類名,小寫的是數字型別的宣告。值得注意的是:Integer類的數字型別為int。

 

下面我們來按照如下輸出:

 



可以發現變數是可以重複賦值的,而且一旦宣告瞭變數,就代表分配了在記憶體上給它分配了空間,同時預設了一個0值。而Python裡面則不行,變數必須給一個初始值。

 

從上圖不難看出,int、long、short都屬於整數型別,double和float都屬於浮點數型別,Double、Float、Integer、Long、Short從它們的字面意思都很容易和數關聯,而byte竟然也屬於Number類,這是為什麼呢?因為在Java中byte也是用二進位制數的形式來表示。所以我們發現byte的初始值也是一個整數。

 

基本資料型別:布林型別

 

Boolean作為真假的判斷,布林型別,有點程式設計知識的朋友都聽說過。而Java15裡面的布林型別則是基本資料型別之一,對應具有一個false值和一個true值。同樣的,如果我們宣告布林型別的資料型別,我們不能用大寫,而是小寫boolean。

boolean預設的值是false,大家可以在jshell裡面定義一個boolean 型別的變數試試。

 

基本資料型別:字元型別

 

Character型別,非常好理解。正如它的名字一般,就是字元型別。我們平時的大部分輸入都是這種型別。Java裡,字元型別是遵循Unicode字符集的。

 

 我們宣告一個字元變數,使用char,預設值是'\000',和Python一樣用引號作為字串的標識。

 

大家一定很好奇,Java這種強型別語言,如果賦值不屬於對應的型別,會不會報錯呢?這裡實測一下:

 

 

所以,我們儘量不要踩雷,老老實實的使用對應的資料型別來定義不同型別的資料。

相關文章