public static void toHex(int num)//将10进制转换16进制的方法
{
for (int x=0; x<8; x++)//int类型是4个8位,每次右移4位,只能右移8次,定义遍历8次
{
int temp = num&15;// 取出最后4位
if (num&15>9)//如果大于9转化为字母
System.out.println((char)((num&15)-10+'A'));
else
System.out.println(num&15);//不大于9直接打印
num = num>>>4;
}
}
打印出来,为什么只有 if (num&15>9),这里报错,改成if (temp>9),就好了,而后面的 num&15 不报错呢
|
|