byte转int的时候为什么非要先&0xff计算出来才是正确答案?明明byte数组里面每个元素都只保存了一个字节的内容,取不取指定位都应该一样才对啊
public static int bytesToInt(byte[] aByte) {
int bInt = 0;
for(int i = 0;i < aByte.length;i++) {
bInt += (int)(aByte[i] << i*8); //为什么这样就是错的结果?
}
return bInt;
}