慕林溪
2016-02-26 08:44
为什么Integer.toHexString(b)改成Integer.toHexString(b & 0xff)就去掉了前面的24个0了?
0xff二进制表示是11111111(前面24位为0),把b与0xff进行&运算(与0与为0、与1与为1),相当于把b的前24为全部置为0,不是去掉
0xff是8位的11111111,进行与运算相当于保留后8位,将前32位-8位=24位去除
只是通过与运算把前面的都变为0,
文件传输基础——Java IO流
133754 学习 · 1030 问题
相似问题