Java 是一種強類型語言,其中的數據類型都有明確的定義。整數類型就是其中的一種,它分為 int 型和 long 型。
int 型是一種 32 位有符號整數類型,其取值范圍是 -231到 231-1。在內存中占用 4 個字節,是 Java 中最常用的整數類型。創建一個 int 類型的變量可以使用如下語法:
int num = 10;
如果直接賦值一個過大的數,例如 2147483648,會出現編譯錯誤:整數越界(Integer Out Of Range),因為超過了 int 類型能表示的最大值。這時可以使用 long 類型。
long 型是一種 64 位有符號整數類型,其取值范圍是 -263到 263-1。在內存中占用 8 個字節,比 int 類型多占用一倍的空間。使用 long 類型創建變量可以使用以下語法:
long num = 2147483648L;
注意此處的 L,因為 2147483648 超過了 int 類型能表示的最大值,所以需要使用 L 后綴表示這是一個 long 類型的字面值。
需要注意的是,當使用 long 類型進行計算時,如果不加 L 后綴,其結果會被自動轉為 int 類型,可能會導致計算錯誤。例如:
long num1 = 2147483647; long num2 = 2147483648; long sum = num1 + num2; System.out.println(sum); // 輸出 -2147483647
在計算 num2 時需要加 L 后綴,否則會被識別為 int 類型,導致溢出并出現計算錯誤。