而0xF2 = 242,超出這個範圍,所以報錯了。
由於Java中沒有無符號整數,所以要麽 0xF2 = 242(int),要麽 0xF2 = -14
不知道妳要得到byte類型是為了什麽,
如果是為了顯示,不希望它變成負數,那麽最好用int來保存比較好,如果實在想節省內存,用short型。
如果是為了傳輸,或者想用最少的內存,那麽建議是先解析為int,然後再強制轉換為byte:
(byte)( Integer.parseInt("F2", 16) )
註意1: parseInt的參數中不需要"0x",如果需要0x,則用Integer.decode()
註意2: 在網絡傳輸時,負數不會有什麽影響,但是如果要做計算處理,則請考慮這與普通的運算可能會有不同(例如判斷大小)