import java.math.BigInteger;
import java.util.Scanner;
public class 进制转换 {
public static void main(String a[]){
// ---------第一类
//2进制转10进制
Integer b=Integer.parseInt("11",2);
System.out.println("2进制转10进制:11-->"+b);
//8进制转10进制
Integer n=Integer.parseInt("11",8);
System.out.println("8进制转10进制:11-->"+n);
//16进制转10进制
/* Scanner in = new Scanner(System.in);
String str=in.nextLine();
*/
Integer m=Integer.parseInt("11",16);
System.out.println("16进制转10进制:11-->"+m);
// ----------第二类
//10进制转2进制
String aa=Integer.toBinaryString(10);
System.out.println("10进制转2进制:10-->"+aa);
//10进制转8进制
String bb=Integer.toOctalString(10);
System.out.println("10进制转8进制:10-->"+bb);
//10进制转16进制
String cc=Integer.toHexString(10).toUpperCase();
System.out.println("10进制转16进制:10-->"+cc);
// ----------第三类 :函数: new BigInteger(num,from).toString(to); num:待转数,from:原数的进制,to:代表转换的进制
//16进制转8进制
String d="A";
String dd=new BigInteger(d, 16).toString(8);
System.out.println("16进制转8进制:A-->"+dd);
//16进制转10进制
String ee=new BigInteger(d, 16).toString(10);
System.out.println("16进制转10进制:A-->"+ee);
//16进制转2进制
String ff=new BigInteger(d, 16).toString(2);
System.out.println("16进制转2进制:A-->"+ff);
//2进制转8进制
String gg=new BigInteger("1010", 2).toString(8);
System.out.println("2进制转8进制:1010-->"+gg);
//2进制转10进制
String hh=new BigInteger("1010", 2).toString(10);
System.out.println("2进制转10进制:1010-->"+hh);
//2进制转16进制
String ii=new BigInteger("1010", 2).toString(16).toUpperCase();
System.out.println("2进制转16进制:1010-->"+ii);
//10进制转16进制
String jj=new BigInteger("10", 10).toString(16).toUpperCase();
System.out.println("10进制转16进制:10-->"+jj);
//8进制转16进制
String kk=new BigInteger("10", 8).toString(16).toUpperCase();
System.out.println("8进制转16进制:10-->"+kk);
}
}
运行结果: