題目
以下 b 的值是: byte b = (byte)129;
()
A. -126
B. -127
C. -128
D. -129
答案
B
解析
byte型佔1個字節,8位;
int型佔4個字節,32位。
int型 129 在二進制中爲:00000000 00000000 00000000 10000001
強制轉換爲byte型後,僅剩1個字節,即:10000001
由於二進制中第一位是符號位,10000001被認爲是負數,下面求負數的補碼:
1111 1110
故反碼爲
1111 1111
轉換爲int型爲-127