在java里面可以用Integer来实现任意进制的转换
在java里面int 默认十进制,但是可在值前面加0,0x表示其他进制
比如: int i=0xAbc;
在Integer包装类里面,提供了进制转换的toString。
Integer.toString(int i,int j)//i=待转换的数,j代表进制
如果是16进制,键盘输入用String类型接收,然后用Integer.parseInt(String ,int k)//k表示进制
public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		int t=sc.nextInt();
		System.out.println(Integer.toString(t,16));
	}	public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		String i=sc.next();
		int iHex=Integer.parseInt(i,16);
		System.out.println(Integer.toString(iHex,10));
	}	public static void main(String[] args) {
		
		Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
//		String n1=sc.next();
//		int iHex=Integer.parseInt(n1,16);
		String[]arr=new String[n];
		for(int i=0;i<n;i++) {
			arr[i]=sc.next();
			int iHex=Integer.parseInt(arr[i],16);
			System.out.println(Integer.toString(iHex,8));
		}
		
	}Integer还有专门方法
10—–》2
Integer.toBinaryString(int a)//十进制转换成二进制
10–》8
Integer.toOcatalString
10—》16
Integer.HexString
其他的可以用toString。
是不是非常方便,快去试试
 
版权声明:本文为qq_51591801原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
