Java_输出60的十六进制

来源:互联网 发布:ehviewer网络错误2016 编辑:程序博客网 时间:2024/06/03 18:13

方式一

最简单的方式调用Integer类的现成方法

public class test02 {    public static void main(String[] args) {        int i = 60;//      把60转换为十六进制或二进制,调用Integer类现成的方法        String ss = Integer.toHexString(i);        System.out.println(ss);        System.out.println(Integer.toBinaryString(i));    }}

方式二

用java实现底层的思路

看图:
60

可以先通过 &(与) 15 先获得60的最低4位的值,再对60右移 << ,然后再次 & 15 获得高四位值。
Q:如何把相 & 获得的值转换为十六进制呢?

char c = ‘a’;
char c1 =(char)(c + 2);
System.out.println(c1); //c

这个思路,则:

public class test02 {    public static void main(String[] args) {        int j = i & 15;//1,获得i最低四位二进制,对应的十进制值为j=12        String k1 = (j<=9)? j + "" : (char)(j-10+'a')+"";//把j转换为十六进制        System.out.println(k1); //c        i = i >> 4;//60先右移        int z = i & 15; //获得高四位值        String k2 = (z<=9)? z + "" : (char)(j-10+'a')+"";        System.out.println(k2 + k1); //3c    }}

对于int型,字节为4,对于更大int数值,只要右移、循环多次就好。

0 0
原创粉丝点击