Java通过位运算实现10-16进制转换

import java.util.*;


public class Hexadecimal 
{
public static void main(String[] args)
{
char[] contain = new char[100];
int N,cou;
Scanner cin = new Scanner(System.in);
while(cin.hasNextInt())
{
cou=0;
N=cin.nextInt();
if(N==0) {System.out.println(0);continue;} //0特殊处理
while(N!=0)
{
int temp = N & 15;
contain[cou++]=(temp>=10)?(char)('A'+(temp-10)):(char)('0'+temp);
N>>>=4;   //右移四位末尾补0
}

for(int i=cou-1;i>=0;i--)
System.out.print(contain[i]);

System.out.println();
}
}
}

你可能感兴趣的:(Java)