Java基本數據類型

基本的數據類型

1. 整形

byte 字節 ,內存中佔8位,範圍-128(-2^-7) ~ 127(2^7-1)
short 短整形,2個字節, 內存16位,範圍(-2^15) ~ (-2^15-1)
int 整形,4個字節,內存32位,範圍(-2^15) ~ (2^15-1)
long 長整型,8個字節,內存64位,範圍(-2^31) ~ (2^31-1),長整型後面要加上L,如99999999L,否則計算機會將他當成32位的來使用。

  • 注意:

當大類型轉換成小類型數字是,會產生溢出的可能,從而導致數據錯誤

byte a;
long b = 9999999L;
a = b;
//這樣機會導致溢出,原理:計算機將b轉換出二進制後再給a賦值,a只有4位,並不能完全的接受b的二進制數

2.字符型

java語言使用的是16位的Unicode字符編碼,支持世界上所有的編碼方式,範圍是(’\u0000’ ~ ‘\uFFFF’)其中前256個(’\u0000’ ~ ‘\u00FF’)與ASII碼完全相同

由於計算機底層保存字符時,實際上是保存該字符的對應編號。因此char類型可以直接作爲整形來使用。

 char str = 's';
 System.out.println(str>35);

3.浮點型

double 8位字節,64位
float 4位字節,32位,如果希望將一個數,當做float類型後面需要添加上f或F

4.布爾類型

boolean數值只能是tru、false

基本數據類型轉換

1.1自動類型轉換

java所有的數值類型變量可以相互轉換,如果系統將某種基本類型的值直接賦值給另一種基本類型的變量,則這種方式被稱爲自動類型轉換。

  • 當小類型的值轉換爲大類型的值時不需要考慮溢出問題,當大類型值轉換成小類型值要考慮溢出問題
       byte min;
       int max = 999999;
       min = (byte) max;
       //結果輸出66,已經溢出了
       System.out.println(min);


byte 是8位的二進制,int 是32位的二進制。byte只能去int的前8位二進制,所以得到66!

1.2強制類轉換

當進行強制類型轉換時:大類型轉換爲小類型時,需要注意溢出的問題.

        int value = 520;
        byte b = (byte)value;
        //打印結果: 8 
        System.out.println(b);

結果溢出。

發佈了72 篇原創文章 · 獲贊 16 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章