【Java例题】6.1 进制转换
1.进制转换。
输入一个某种进制的整数,将其转换为其它进制的整数。
说明:仅考虑十、二、八和十六进制。
package chapter6; import java.util.*; public class demo1 { static public void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("按1+enter---输入2进制数"); System.out.println("按2+enter---输入8进制数"); System.out.println("按3+enter---输入10进制数"); System.out.println("按4+enter---输入16进制数"); int con1=sc.nextInt(); System.out.println("按1+enter---转换为2进制数"); System.out.println("按2+enter---转换为8进制数"); System.out.println("按3+enter---转换为10进制数"); System.out.println("按4+enter---转换为16进制数"); int con2=sc.nextInt(); switch(con1) { case 1:System.out.println("请输入2进制数");break; case 2:System.out.println("请输入8进制数");break; case 3:System.out.println("请输入10进制数");break; case 4:System.out.println("请输入16进制数");break; default:System.out.println("请输入正确指令!");break; } String num=sc.next(); zhuanhuan(con1,con2,num); sc.close(); } private static void zhuanhuan(int a,int b,String c) { switch(a*10+b) { case 11:System.out.println(c);break; case 12:System.out.println(Integer.toOctalString(Integer.valueOf(c,2)));break; case 13:System.out.println(Integer.valueOf(c, 2));break; case 14:System.out.println(Integer.toHexString(Integer.valueOf(c,2)));break; case 21:System.out.println(Integer.toBinaryString(Integer.valueOf(c,8)));break; case 22:System.out.println(c);break; case 23:System.out.println(Integer.valueOf(c,8));break; case 24:System.out.println(Integer.toHexString(Integer.valueOf(c,8)));break; case 31:System.out.println(Integer.toBinaryString(Integer.parseInt(c)));break; case 32:System.out.println(Integer.toOctalString(Integer.parseInt(c)));break; case 33:System.out.println(c);break; case 34:System.out.println(Integer.toHexString(Integer.parseInt(c)));break; case 41:System.out.println(Integer.toBinaryString(Integer.valueOf(c,16)));break; case 42:System.out.println(Integer.toOctalString(Integer.valueOf(c,16)));break; case 43:System.out.println(Integer.valueOf(c,16));break; case 44:System.out.println(c);break; } } }