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