一. 问题

协议拼接需要checksum函数,用于协议的下发和接收。
checksum使用简单的byte数组相加方式求和计算。

二. 如何使用

  1. java中 byte转int (特别注意)
    byte b=0x01;
    int a=0xff&b; //正确

  2. java中 int转byte
    int a=0x01;
    byte b=(byte)(a);

三. 原理

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

四. 简单相加的checksum工具类

/*** checksum 计算数组和** @param script* @return*/
public static int getChecksum(byte[] script){int sum = 0;for (byte b : script) {sum += 0xff & b;}return sum;
}

【已解决】java int转byte出现负数相关推荐

  1. 已解决java.lang.NoClassDefFoundError异常的正确解决方法,亲测有效!!!

    已解决java.lang.NoClassDefFoundError异常的正确解决方法,亲测有效!!! 文章目录 报错问题 报错原因 解决方法 NoClassDefFoundError解决示例 福利 报 ...

  2. 已解决java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.String异常的

    已解决java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.String异常的 ...

  3. 已解决java.lang.Integer cannot be cast to java.lang.String异常的正确解决方法,亲测有效!!!

    已解决java.lang.Integer cannot be cast to java.lang.String异常的正确解决方法,亲测有效!!! 文章目录 报错问题 解决方法 福利 报错问题 1.在执 ...

  4. 已解决 java.sql.SQLException: 列名无效

    已解决 java.sql.SQLException: 列名无效 说明在获取ResultSe结果集的时候字段与查询到的表中字段没有一至的, 解决方案: 更改rs.getObject(" 字段名 ...

  5. 已解决java.util.concurrent.ExecutionException异常的正确解决方法,亲测有效!!!

    已解决java.util.concurrent.ExecutionException异常的正确解决方法,亲测有效!!! 文章目录 报错问题 解决方法 福利 报错问题 粉丝群里面的一个小伙伴敲代码时发生 ...

  6. 已解决java.lang.ClassCastException异常的正确解决方法,亲测有效!!!

    已解决java.lang.ClassCastException异常的正确解决方法,亲测有效!!! 文章目录 报错问题 解决方法 福利 报错问题 粉丝群里面的一个小伙伴敲代码时发生了报错(当时他心里瞬间 ...

  7. 已解决java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.Long异常的正确

    已解决java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.Long异常的正确 ...

  8. 已解决java.lang.RuntimeException: java.lang.RuntimeException: org.codehaus.plexus.component.repository.

    已解决java.lang.RuntimeException: java.lang.RuntimeException: org.codehaus.plexus.component.repository. ...

  9. 已解决java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map异常的正确解决方法,亲测有效!!

    已解决java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.util.Map异常的正确解决方法,亲测有效!! ...

  10. [java] int转byte的细节

    1.前言 本人两年Java开发经验,开发期间干的大都是CRUD的活,温水煮青蛙.最近就想着投投简历,看下外面是个啥行情,抽空也背了些八股文.上周面了一家,虽然问的内容都很基础,就是面那种刚毕业的大学生 ...

最新文章

  1. 字体设置_word字体设置:如何为常用字体设置快捷键
  2. php xml写入数据库中,PHP读取xml并写入数据库示例
  3. Netflix如何通过支持TLS 1.3提供更安全高效的播放体验
  4. java上机题四取三排列_java语言特性概述
  5. video标签 api
  6. openstack-o版-nova安装
  7. 霸气!Power 支持混合云、多云,性能完胜 x86!
  8. 计算机网络管理员高级操作技能考核试卷,高级计算机维修工操作技能考核试卷...
  9. leetcode/剑指Offer05.替换空格 双指针法实现原地替换
  10. Photoshop插件-奥顿效果(梦幻柔焦)-脚本开发-PS插件
  11. 服务器运维实习周记,设备维护实习周记 - 实习周记 - 书业网.doc
  12. 数仓1.4 |业务数仓搭建| 拉链表| Presto
  13. 胃病患者饮食结构注意事项
  14. Win10实现截取视频并改为gif
  15. 在图片上的文字背景,颜色是黑色?
  16. 03从变量PS1到centos7配置文件到变量。转义字符介绍
  17. react中文文档、英文文档及JavaScript相关文档及web前端相关资料
  18. 2007年12月全球十大搜索引擎
  19. PyQt+moviepy音视频剪辑实战2:实现一个剪裁视频文件精华内容留存工具
  20. 我收藏的短线操作技巧

热门文章

  1. 收藏级干货——Auto CAD历史版本功能大盘点(上)
  2. beetle-j2ee-application-framework框架介绍.md
  3. Google的Java常用类库 Guava资料
  4. win10一键激活,解除SymantecEndpointProtection的自动拦截
  5. MinGW-w64的安装及配置教程
  6. 新浪博客的html,新浪博客代码-HTML代码
  7. TCPMP 请发送crash.txt文件给开发者 问题
  8. 百度地图--南京行政区域划分
  9. 五子棋c语言编程软件,C语言实现五子棋游戏
  10. javascript 替换