} /** * 字节数组转换成字符串 * @param b * @return */ public static String byte2hex(byte[] b){ StringBuffer sb=new StringBuffer(); String stmp=""; for(int n=0;n<b.length;n++){ stmp=(Integer.toHexString(b[n]&0XFF)); if(stmp.length()==1){ //不足两位的末尾补零 sb.append("0"+stmp); } else{ sb.append(stmp); } if(n<b.length-1){ //":"作为分割符 sb.append(":"); } } return sb.toString().toUpperCase(); }
0.1打印出来的内存结果是: 3F:B9:99:99:99:99:99:9A
我们恢复一下和第一节的表示意义对照表对照一下: 0 01111111011 1001.....1010
有兴趣的话,可以那科学计算器按照第一节的规则计算一下它的值,哦,正好就是我们通过System.out.println(d)打印的结果.
|