美文网首页
十六进制数据累加效验遇到的坑

十六进制数据累加效验遇到的坑

作者: a233f2076716 | 来源:发表于2020-11-27 11:00 被阅读0次

十六进制数据效验累加坑
我这里是使用初始值 int a = 0x2ac5 累加所有的数据段,其他数据段都为byte,
注意了int 累加 byte

//错误方式
        for (byte b:btByte) {
            a += b;
        }
//正确方式
        for (byte b:btByte) {
            a += (0xff & b);
        }


就这么点小细节 坑死我了
java中byte是8位 -128~127之间,而int是32bit,在转化前需将高24位置零,这样就不会出现补码导致的转换错误。

相关文章

网友评论

      本文标题:十六进制数据累加效验遇到的坑

      本文链接:https://www.haomeiwen.com/subject/vdxxwktx.html