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]+",");
}
}那个char[] arr=new char[8];//最大值8
为什么最大值8?或者说这个8是代表什么意思?谢谢~
添加回答
举报
0/150
提交
取消