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-15char[] arr=new char[8];//最大值8int 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 |