为了账号安全,请及时绑定邮箱和手机立即绑定

正在回答

4 回答

把Integer.toHexString(b)这个改成Integer.toHexString(b & 0xff)就一样了。

0 回复 有任何疑惑可以回复我~
#1

沙滩贝壳 提问者

非常感谢!
2017-08-09 回复 有任何疑惑可以回复我~

这个还有一个问题,单位数补0,不然会得到更加奇怪的答案

if(buf[i]<=0xf) {

System.out.print("0");

}

这样读取出来结果好像有问题。

按照你的代码应该这样写

if(bytes<=0xf) {

System.out.print("0");

}


0 回复 有任何疑惑可以回复我~

老师讲错了,一定要在数组输出法的输出格式里面加上按位与操作 System.out.print(Integer.toHexString(buf[i]& 0xff)+" "); 不然得不到相同结果

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么两种方法的输出结果不同

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信