黑马程序员技术交流社区
标题:
进制转换查表
[打印本页]
作者:
安静的喝会奶
时间:
2016-6-16 17:53
标题:
进制转换查表
class SearchExcel
{
public static void main(String[] args)
{
System.out.println("输入您要转换的数:");
Scanner sc = new Scanner(System.in);
int num = sc.nexInt();
System.out.print("转换成8进制为:");
toOcto(num);
System.out.println();
System.out.println("转换成16进制为:");
toHex(num);
}
public static void toOcto(int num)
{
excel(num,11,7,3);
}
public static void toHex(int num)
{
excel(num,8,15,4);
}
private static void excel(int num,int len,int and,int shift)
{
char[] table = {'0','1','2','3','4',
'5','6','7','8','9',
'A','B','C','D','E','F'};
if(num==0)
{
System.out.println("转换成"+(and+1)+"进制数是:0");
return;
}
char[] arr = new char[len];
int point = arr.length;
for(int a = num;a!=0; num = num>>shift,a=num)
{
a = a∧
arr[--point] = table[a];
}
for(int i = point;i<arr.length;i++)
{
System.out.print(arr[i]);
}
}
}
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2