首页 > 代码库 > java byte&0xFF
java byte&0xFF
做串口端口通讯时,数据都是以byte类型发送的
普通的byte范围是-128-127,而java的byte范围是0-255
因此将数据的byte转成java的byte时,需要与0xff(11111111)做一个&运算,将-128-127转换到java的0-255之间
也就是与 0xff 做 & 运算会将数据 byte 值变成 java的byte 类型的值,也将 -128~0 间的负值都转成正值了。
System.out.println("1的编码:"+Integer.toBinaryString(1));//java中的负数是取补码+1System.out.println("-1的编码:"+(Integer.toBinaryString(-1)));System.out.println("0XFF的编码:"+Integer.toBinaryString(Integer.valueOf("FF",16)));System.out.print("-1 & 0xFF:");System.out.println(-1 & 0xFF);System.out.print("1 & 0xFF:");System.out.println(1 & 0xFF);
打印输出
1的编码:1-1的编码:111111111111111111111111111111110XFF的编码:11111111-1 & 0xFF:2551 & 0xFF:1
java byte&0xFF
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。