示例代码:
/**
* 进制转换
* @param num 需要转换的数
* @param aim 需要转换的进制(只能是2,8,16)
*/
public static void convert(int num ,int aim){
int i = 0;
int k = 0;
switch(aim){
case 2:
i = 1;
k = 1;
break;
case 8:
i = 7;
k = 3;
break;
case 16:
i = 15;
k = 4;
break;
default:
System.out.println("错误进制 ");
break;
}
char[] ch = new char[]{'0','1','2','3'
,'4','5','6','7',
'8','9','A','B',
'C','D','E','F'};
char[] ca = new char[8];
int pos = ca.length ;
while(num != 0){
int temp = num & i;
ca[--pos] = ch[temp];
num >>>= k;
}
for(int j = pos;j<ca.length;j++){
System.out.println((char)ca[j]);
}
}