/*
需求:byte b = 300;这个有问题吗?如果有问题如何解决?结果是多少?
分析:
A:首先使用强制转换
byte b = (byte)300;
B:将300的二进制计算出来
00000000 00000000 00000001 00101100
又因为300是正数,所以原码,反码,补码都是相同的。
C:因为byte为1个字节,做截取操作
00101100 这个是补码
已知补码,求原码
符号位 数值位
补码 0 0101100
反码 0 0101100
原码 0 0101100
结果是44.
*/
class DataDemo{
public static void main(String[] args){
byte b = (byte)300;
System.out.println(b);
}
}
|
|