//十进制转换成其它进制的通用写法(查表法)
class Transform
{
public static void main(String[] args)
{
toHex3(60);
System.out.println();
toOctal2(20);
System.out.println();
toBinary2(6);
}
public static void toAny(int num,int base,int offSet)
{
char[] ch={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};
char[] arr = new char[32];
int index = arr.length;
while(num!=0)
{
int n = num&base;
arr[--index] = ch[n];
num = num>>>offSet;
}
for(;index<arr.length;index++)
{
System.out.print(arr[index]);
}
}
public static void toHex3(int num)
{
//十进制转换为16进制的表现显示
toAny(num,15,4);
}
public static void toOctal2(int num)
{
//十进制转换为8进制的表现显示
toAny(num,7,3);
}
public static void toBinary2(int num)
{
//十进制转换为2进制的表现显示
toAny(num,1,1);
}
}
转载于:https://blog.51cto.com/reversetime/1608153