一个关于byte数组从10进制的byte数组转为16进制byte数组的问题

我真萌 2017-11-15 06:48:21
比如说我有一个byte数组是十进制的。例如byte[] a = {8,9,10,11,12}现在我要把这个数组转成16进制的byte数组byte[] b = {08,09,0a,0b,0c}从a数组变成b数组,我该怎么办
...全文
570 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
自由自在_Yu 2017-11-16
  • 打赏
  • 举报
回复
byte[] b = {08,09,0a,0b,0c}; byte类型的不能定义成0a,0b这样的,除非你定义String类型的 byte[] a = {8,9,10,11,12}; String[] b = new String[a.length]; for (int i = 0; i < a.length; i++) { b[i] = "0"+Integer.toHexString(a[i]); } for (int i = 0; i < b.length; i++) { System.out.println(b[i]); } 这样b的值就是08 09 0a 0b 0c
我真萌 2017-11-16
  • 打赏
  • 举报
回复
引用 2 楼 l359122505 的回复:
16进制只是数据的表示方式,不会改变数据的值
但是怎么让他用16进制显示出来啊
我真萌 2017-11-16
  • 打赏
  • 举报
回复
引用 1 楼 zssazrael 的回复:
byte 的数据是不分进制的,只是你在看 byte 的内容时,可以选择10进制的看,还是16进制的看。
那我怎么让byte数组以b数组的方式显示出来啊
繁华终归落尽 2017-11-16
  • 打赏
  • 举报
回复
16进制只是数据的表示方式,不会改变数据的值
幽饮烛 2017-11-16
  • 打赏
  • 举报
回复
byte 的数据是不分进制的,只是你在看 byte 的内容时,可以选择10进制的看,还是16进制的看。
李德胜1995 2017-11-16
  • 打赏
  • 举报
回复
引用 5 楼 yuxiangaaaaa 的回复:
byte[] b = {08,09,0a,0b,0c}; byte类型的不能定义成0a,0b这样的,除非你定义String类型的 byte[] a = {8,9,10,11,12}; String[] b = new String[a.length]; for (int i = 0; i < a.length; i++) { b[i] = "0"+Integer.toHexString(a[i]); } for (int i = 0; i < b.length; i++) { System.out.println(b[i]); } 这样b的值就是08 09 0a 0b 0c
666666666大佬

51,396

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧