mn_0001
2015-05-23 20:08
执行System.out.print(Integer.toHexString(b) + " ");没有和0xff相与,结果为什么是这样啊:ffffffc4 ffffffbd ffffffbf ffffffce 41 42 43,前面24位不是0啊,这是为什么
中文的byte中最高位为1,即对应的byte为负数,转为Integer,符号不变,同样最高位为1,为负数。负数以补码存储在计算机中,因此为FFFFFF。具体补码怎么实现,上网查看转换规则即可。
文件传输基础——Java IO流
133754 学习 · 1030 问题
相似问题