大佬们,想请问下方法二运行结果中的最后几行会有那么多ffff,(因为我两个都没有用& 0xff)
方法一:
方法二:
运行结果:
这是byte转化integer时出现的问题(因为用的是integer的方法),因为byte在java中是有正负的整数,所以转为integer是也是相应的整数,integer存储大小为4个字节,而byte为一个字节,存在相应扩展,负数是补码存储,所以是前面添1,正数是原码存储所以添0,最后转化为16进制数,前面的0省略,而1不能省略,所以通过&0xff取后八位有效位
那你带上试试