//去除多余的0,然后反转,最好的方法
public static void toHex2(int num)
{
if(num==0)
{
System.out.println("0");
}
//定义一个关系表
char[] chs={'0','1','2','3','4','5',
'6','7','8','9','A',
'B','C','D','E','F',};
/*
一会查表会查到比较的数据。
数据一多就先存储起来,在进行操作。
所以先定义一个数组。临时容器
*/
char[] arr=new char[8];
int pos=arr.length;//定义数组角标
while (num!=0)
{
int temp = num&15;
arr[--pos] = chs[temp];//因为16进制位时是倒着填充数据的,所以这里要倒着来
num = num>>>4;
}
System.out.println("pos="+pos);//数组的角标
for (int x=pos;x<arr.length ;x++ )//打印出来数组的值
{
System.out.print(arr[x]);
}
}
查表法化16进制
最新推荐文章于 2022-01-08 07:45:00 发布