Java学习日记查表法十进制转十六进制
心得写在注释里面,代码如下:
public static void toHex(int num)
{
char[] str={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};//制表,自动带下标0-15
char[] arr=new char[8];//最大值8
int pos=arr.length;//pos作下标指针用
while(num!=0)//每次位运算右移动4位,判断为0时停止,非0时继续
{
int temp=num&15;//每次取数的2进制的最右边4位
arr[--pos]=str[temp];//下标先-1,防止下标越界,从最大下标依次减减存入,反向存储
num=num>>>4;//无符号右移
}
//存储数据arr数组的遍历。
for(int x=pos;x<arr.lenth;x++)//遍历正向输出
{
System.out.print(arr[x]+",");
}
}
心得写在注释里面,代码如下:
public static void toHex(int num)
{
char[] str={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};//制表,自动带下标0-15
char[] arr=new char[8];//最大值8
int pos=arr.length;//pos作下标指针用
while(num!=0)//每次位运算右移动4位,判断为0时停止,非0时继续
{
int temp=num&15;//每次取数的2进制的最右边4位
arr[--pos]=str[temp];//下标先-1,防止下标越界,从最大下标依次减减存入,反向存储
num=num>>>4;//无符号右移
}
//存储数据arr数组的遍历。
for(int x=pos;x<arr.lenth;x++)//遍历正向输出
{
System.out.print(arr[x]+",");
}
}