前置知识点 byte的范围[-128~127] 内存里表现为 0x00~0xFF 刚好是一个8bits的字节 问题 byte[] hexData = new byte[] {0x01, 0x03, 0x04, 0x02, 0x1F, 0x01, 0x4E, 0x4B, (byte)0xE9 }; Java先把括号里的识别为int数,然后再自动转换为byte 这里的int数0xE9,超出了byte的范围[-128~127],所以不会自动转换,必须代码指定强制转换. 那么问题来了,内存里是这样的 调…