參考Herbert Schildt編寫的「Java The Complete Reference」第7版第79頁。 作者說:「如果整數值大於 字節的範圍,則它將以模的形式(整數除以該字節的範圍的其餘部分)減少」。將整數轉換爲java中的字節
在Java字節的範圍是-128到127因此,適合在一字節的最大值是128。如果一個整數值被分配給一個字節,如下所示:
int i = 257;
byte b;
b = (byte) i;
由於257越過127的範圍,257%127 = 3應該存儲在'b'中。 但是得到的輸出爲1而不是3。 我在理解這個概念時出了什麼問題?
'257%128 = 1' – Hacketo
我認爲你引用的作者是錯的。他所說的「字節範圍」是什麼意思?無論你是以127(如你所做的)還是128或256,它都不起作用。 (例如129%128 = 1,而(字節)129 = -127) – Rodney