我想用一個整數創建一個字節。例如,我有4個整數,我想和值4。創造一個字節當我這樣做從一個整數創建一個字節
byte test = 134;
我得到的-122的字節值wheras我想簡單地134字節值以便我可以稍後將其轉換爲ascii。
我不確定如何做到這一點,但會歡迎任何可以提供的幫助。謝謝。
我想用一個整數創建一個字節。例如,我有4個整數,我想和值4。創造一個字節當我這樣做從一個整數創建一個字節
byte test = 134;
我得到的-122的字節值wheras我想簡單地134字節值以便我可以稍後將其轉換爲ascii。
我不確定如何做到這一點,但會歡迎任何可以提供的幫助。謝謝。
在Java中,byte
被解釋爲帶符號(連同int
s,short
s和long
s)。無符號字節值134
與有符號字節值-122
的位等效。如果您希望使用byte
的無符號值,可以通過存儲在一個有符號整數,該值超過8位,如int
這樣做:
byte test = (byte) 134;
int unsignedByteValue = ((int) test) & 0xff;
// now unsignedByteValue == 134
的0xff
位掩碼確保只有unsignedByteValue
的低8位是1。否則,簽名爲byte
的負號將導致負號int
通過符號擴展。
你能解釋第二行是什麼嗎? –
字節總是在-128到127之間。 –
_「我想要一個簡單的字節值134」_字節值的範圍是'[-128,127]' –
這絕對不能編譯。 –