- class Demo
- { public static void main(String[] args)
- { toHex(60);
- }
- public static void toHex(int num)
- {
- char [] chn={'1','2','3','4',
- '5','6','7','8',
- '9','A','B','C',
- 'D','E','F'};
- /*这里的表中少定义了一个为0的数符,每个进制都是有0这个数码的。
- 而60的二进制为0000 0000 0000 0000 0000 0000 0011 1100,
- */
- char [] arr=new char[8];
- int pos=8;
- while(num!=0)
- { int temp=num&15;//第一次得到1100,即12,查表得D(数组下标从0开始),第二次得到0011,即3,查表得4,故结果输出4D
- arr[--pos]=chn[temp];
- num =num>>>4;
- }
- for(int x=pos;x<arr.length;x++)
- {
- System.out.print(arr[x]);
- }
- }
- }
复制代码 |