Java int數據類型

int數據類型是32位有符號Java原語數據類型。

int數據類型的變量需要32位內存。

其有效範圍爲-2,147,483,6482,147,483,647(-2^312^31 - 1)。

此範圍中的所有整數稱爲整數文字。

例如,10-20003019等是int的整數字面量值。

一個整數字面量可以分配給一個int變量,如num1,像這樣:

整型字面量

整數字面量也可以表示:

  • 十進制數字格式
  • 八進制數字格式
  • 十六進制數字格式
  • 二進制數格式

當整數文字以零開始並且至少有兩個數字時,它被認爲是八進制數格式。以下代碼行將十進制值17(八進制爲021)分配給num1

// 021  is in octal number format, not  in  decimal 
int num1 = 021;

以下兩行代碼將值17分配給變量num1的相同效果:以下值不是以零開始,所以它是十進制數字格式。

int num1 = 17;

以下值是以零開始,因此它是一個八進制數字格式。 八進制中的值021與十進制中的17相同。

int num1 = 021;

八進制格式的int字面值必須至少有兩位數字,並且必須以零開始以作爲八進制數的表示。數字0在十進制數格式中被視爲0,並且以八進制數格式將00視爲零。

十六進制數字格式的所有int字面量都以0x0X開頭,它們必須至少包含一個十六進制數字。十六進制數字格式使用16位數字,0-9A-F(或a-f)。字母AF的大小寫無關。
以下是以十六進制格式使用int文本的示例:

int num1 = 0x123;
int num2 = 0xdecafe; 
int num3 = 0x1A2B; 
int num4 = 0X0123;

可以使用二進制數字格式表示一個int字面量。所有二進制數字格式的int字面量以0b0B開頭。
以下是使用二進制數字格式的int字面量的示例:

int num1 = 0b10101; 
int num2 = 0b00011; 
int num3 = 0b10;
int num4 = 0b00000010;

Java有一個名爲Integer的類,它定義兩個常量來表示int數據類型的最大值和最小值,即Integer.MAX_VALUEInteger.MIN_VALUE。 例如,

int max = Integer.MAX_VALUE;  // Assigns maximum  int  value to max 
int min = Integer.MIN_VALUE; // Assigns minimum  int  value to min