java实现进制转换

  • Post author:
  • Post category:java


在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 版权协议,转载请附上原文出处链接和本声明。