Java byte类型转换成int类型时需要 & 0XFF的原因
假设有byte b = -1;
那么b的二进制是:1111 1111。
如果将b直接转换为int类型,那么二进制是 1111 1111 1111 1111 1111 1111 1111 1111,这显然就不对了。
所以要与b进行&运算
0XFF的二进制是 0000 0000 0000 0000 0000 0000 1111 1111
那么运算之后到结果就是 0000 0000 0000 0000 0000 0000 1111 1111 这样二进制数据就正确了.