Java long數據類型

long數據類型是64位有符號的Java原始數據類型。當對整數的計算結果可能超出int數據類型的範圍時使用。
long數據類型範圍是-9,223,372,036,854,775,8089,223,372,036,854,775,807(-2^632^63-1)。

long數據類型範圍內的所有整數稱爲long類型的整數字面量。long類型的整數常數總是以大寫L或小寫l結尾。

以下是使用long類型的整數字面量的示例:

long  num1 = 0L; 
long  num2 = 4L; 
long  mum3  = -3; 
long  num4 = 8; 
long  num5 = -1L;

Long字面量

long類型的整數字面量可以用八進制,十六進制和二進制格式表示。 例如,

long  num1;
num1 = 25L;       // Decimal  format 
num1 = 031L;      // Octal format
num1 = 0X19L;     // Hexadecimal  format 
num1 = 0b11001L;  // Binary   format

long類型的整數字面量分配給long類型的變量時,Java編譯器檢查要分配的值,並確保它在長數據類型的範圍內; 否則會產生編譯時錯誤。

注意,從intlong類型的賦值是有效的,因爲存儲在int變量中的所有值都可以存儲在long類型的變量中。 然而,相過來就未必了,因爲long類型數據比int類型範圍要大。所以不能簡單地將存儲在long變量中的值分配給int變量。存在值溢出的可能性。

要將long變量的值賦給int變量,請在Java中使用「轉換」表示,如下所示:

num1 = (int)num2;

Java有一個 Long 類,它定義了兩個常量來表示長數據類型Long.MAX_VALUELong.MIN_VALUE的最大值和最小值。