基礎資料型別 (Elementary Data Type),java基礎資料型別 (Elementary Data Type)

來源:互聯網
上載者:User

基礎資料型別 (Elementary Data Type),java基礎資料型別 (Elementary Data Type)

byte tt=(byte)130  等於 -126 。 byte 佔一個位元組,8bit 。第一位是符號位,0 表示正數,1 表示負數。因此byte 的取值範圍 [-128, 127] 。

130的二進位是00000000000000000000000010000010,截取成byte類型只保留後8位,也就是10000010,第1位是符號位0代表正數、1代表負數,這裡第一位是1也就是負數,電腦儲存的負數是補碼,必須將其他位取反再加1,取反加1後這個為-1111110,這個位元轉換為整數是-126 。

byte a= (byte) 0x00000111;   十六進位 16*16 + 16 + 1 = 256 + 17 =  0000001  00010001 。截取後8位,則 a = 17 。

byte c = (byte)0xFF;  十六進位 15*16 + 15 = 255 = 11111111 , 最前面1表示負數, 儲存的是 補碼,後面7位取反 加 1 等於 1 , 則 c = -1 。   System.out.println(c);  輸入 -1 。

八進位必須以 0 開頭, 十進位不能以0開頭(0除外)。

byte a= 00000111;  八進位 64 + 8 + 1 , 則 a = 73 。

byte a= (byte)00001111; 八進位 8*8*8 + 64 + 8 + 1 = 00000010 01001001 , 轉換成byte,取後8位,則 a = 73 。   byte a= 00001111 ,會報錯超出範圍[-128,127] 。

 

byte占 8位。 short 占 16位,取值範圍 [-32768, 32767]

short s1 = 1; s1 = s1 + 1; 會報錯,因為1是int類型,計算結果是 int類型,需要強制轉換成short類型,寫成  s1 = (short)(s1 + 1) ;  或者 s1 += 1; 此種寫法含有隱式的強制類型轉換。 相當於(short)(s1 + 1)  

 

int類型在記憶體中佔32位,4個位元組。取值範圍 [-2147483648, 2147483647]。

2^31 = 2147483648

 

long型如果賦值超出int型的範圍,則需要在數字後加上L或l 。表示該值是長整型。

long n = 2147483650L + 4; 則 n 值是 2147483654 。 

long m = (long)(2147483647 + 4);  計算過程:2147483647 儲存是: 01111111 11111111 11111111 11111111 加上 00000000 00000000 00000000 00000100 等於 10000000 00000000 00000000 00000011 。

前面的1 表示負數。負數儲存的是補碼,將其他位取反加 1 。 源碼是 11111111 11111111 11111111 11111101 。 則 m 等於 -(2^32-1-2)= -2147483645 。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.