整數類型:byte short int long
整數類型種默認為int
整數類型各自取值范圍:
| 數據類型 | 占用存儲空間 | 存儲范圍 |
| byte | 1字節 | -27~27-1 |
| short | 2字節 | -215~215-1 |
| int | 4字節 | -231 ~ 231-1 |
| long | 8字節 | -263~263-1 |
1 class Var08{ 2 public static void main(String[ ] args) { 3 //byte
4 byte a = 1; //注意:在JAVA中,當對byte short char類型賦值時,如果沒有超出該類型取值范圍則可以直接賦值
5 a = 5; 6 a = -128; 7 //a = 128; //出現編譯錯誤,因為超出byte類型取值范圍
8 System.out.println("a = " + a); 9
10 //short
11 short b =128; 12 b = -32768; 13 //b = 32768; //出現編譯錯誤,超出short類型取值范圍 14 //解決辦法:只能找一個比該類型范圍大的類型存儲該值
15 System.out.println("b = " +b); 16
17 //int
18 int c = 0; 19 //c = 12345678901; //出現編譯錯誤。超出int類型范圍
20 System.out.println("c = " +c); 21
22 //long
23 long d = 6; //注意:在Java中,取值范圍小的類型可以直接賦給取值范圍大的類型,構成自動類型轉換
24 d = 12345678; 25 //d = 12345678909; //出現編譯錯誤,因為值默認為int,超出int取值范圍 26 //解決方法:將右側的值后面添加L或l,此時該值就為long,也就是說該值就為long類型
27 d = 12345678909L; //沒有構成自動類型轉換
28 System.out.println("d = " +d); 29 } 30 }
在JAVA中,當對byte short char類型賦值時,如果沒有超出該類型取值范圍則可以直接賦值
在Java中,取值范圍小的類型可以直接賦給取值范圍大的類型,構成自動類型轉換
long d = 6; //構成自動類型轉換
d = 12345678909; //出現編譯錯誤,因為值默認為int,超出int取值范圍
解決方法:將右側的值后面添加 L 或 l ,此時該值就為long,也就是說該值就為long類型
d = 12345678909L; //沒有構成自動類型轉換
