Guang_Nate
Guang_Nate
采纳率55.6%
2015-06-12 10:51 阅读 2.9k
已采纳

安卓开发中如何使一个byte类型的数组内的数据不显示成负数

在做Android开发的时候一个byte类型的数组result,里面有比较大的正数,需要做什么样的处理才能使他显示的全是正数;求大神指导,给个代码
byte[] result

for (int i = 0; i < result.length; i++)
Log.e("读出全部page", "byte " + i + " is " + result[i]);

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    danielinbiti danielinbiti 2015-06-12 13:59
     for (int i = 0; i < result.length; i++){
                 int highBit = result[i] & 0x80;
                 int restBit = result[i] & 0x7F;             
                 System.out.println(highBit+restBit);
            }
    
    点赞 评论 复制链接分享
  • 91program 91program 2015-06-12 10:55

    需要额外的代码处理,将字节转换为无符号数(如将-1转换为无符号数)
    byte b1 = -1
    int n = b1 & 0xFF
    输出:n=255

    点赞 评论 复制链接分享
  • a1193561652 纵横车 2015-06-12 10:56

    java好像没有unsigned byte,你可以换int,也可以自己写个函数把byte格式化成字符串输出。

    点赞 评论 复制链接分享

相关推荐