java int到byte

来源:百度知道 编辑:UC知道 时间:2024/05/22 11:56:48
超出范围的计算公式是什么?
int 250到byte 还-6呢,怎么解释?

byte 是8位,int是32位。
300的二进制(之前有23个0)100101100;
转化成byte后,直接把前面的多出的14位截去,就成了(之前有2个0)101100。
101100转化成十进制就是44。
这就是高精度想低精度转要溢出的原因。

int长度比byte长在强制转换是只取int的低位,所以就是44了!

???
说清楚点