进制的互相转换之* 十进制转为 8 、16进制
十进制转为 8 、16进制需要
利用Java的内置函数 Integer 的toOctalString 和Integer.toHexString
十转八
import java.util.Scanner
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int n = s.nextInt();
System.out.println(Integer.toOctalString(n))
}
}
蓝桥杯——BASIC-10
十转十六
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int n = s.nextInt();
System.out.println(Integer.toHexString(n).toUpperCase());
}
}
注:这里需要用到toUpperCase方法将十六进制的字母转化为大写
进制的互相转换之* 十六、八进制转为 十进制
十六、八 转十需要利用Long.valueOf(n,x)方法
蓝桥杯——BASIC-11
十六转十
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s= new Scanner(System.in);
String n = s.next();
s.nextLine();
System.out.println(Long.valueOf(n,16));
}
}
八转十
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s= new Scanner(System.in);
String n = s.next();
s.nextLine();
System.out.println(Long.valueOf(n,8));
}
}
进制的互相转换之* 十六进制和八进制的互相转化
十六和八的互相转换需要:
利用 new BigInteger(s.nextLine(),x).toString(y).toUpperCase()
x为需要被转换的进制数,y为需要转换成的进制数
**注:**此方法为通用方法,10-16 、10-8 、 8-10 、16-10 均可利用此方法
蓝桥杯——BASIC-12
十六转八
import java.math.BigInteger;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int n = s.nextInt();
s.nextLine(); //这里不知道为什么要写这个,不然会报错
for(int i =0;i
八转十六
import java.math.BigInteger;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int n = s.nextInt();
s.nextLine();
for(int i =0;i 


