Java byte資料型別


位元組(byte)資料型別是8位有符號Java原始整數資料型別。其範圍是-128127(-2^72^7-1)。

位元組型別是Java中可用的最小整數資料型別。當程式使用其值在-128127範圍內的大量變數或在檔案或網路中處理二進位制資料時,使用位元組變數。

位元組型別沒有位元組字面量。可以將任何在位元組範圍內的int字面量分配給一個位元組變數。
例如,

byte b1 = 125;
byte b2 = -11;

如果為位元組變數分配一個int字面量,並且該值超出了位元組資料型別的範圍,則Java會產生編譯器錯誤。

只能在-128127之間分配一個int字面量到一個位元組變數。但是可以將儲存在一個int變數中的值(其範圍為-128127)分配給一個位元組變數。在Java中,不能將較高範圍資料型別的變數的值分配給較低範圍資料型別的變數,因為在進行這種賦值時可能會損失精度。

若要真的想從int到位元組型別賦值,必須要轉換值。num1b1的分配可以改寫如下:

int num1 = 1;
byte b1  = (byte)num1; // Ok

Java有一個 Byte 類,它定義了兩個常數來表示位元組資料型別的最大和最小值,分別是:Byte.MAX_VALUEByte.MIN_VALUE

byte   max = Byte.MAX_VALUE;
byte   min = Byte.MIN_VALUE;