package com.company;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
String srcNum;
int destNum = 0;
Scanner scan = new Scanner(System.in);
System.out.print("请输入源进制和目标进制,中间用空格隔开:");
int srcBase = scan.nextInt();
int destBase = scan.nextInt();
if (!((srcBase == 8 || srcBase == 10 || srcBase == 16) && (destBase == 8 || destBase == 10 || destBase == 16))) {
System.out.println("这个进制转换器只支持八、十、十六进制的相互转换。");
} else {
switch (srcBase) {
case 8 -> {
System.out.print("请输入八进制数:");
srcNum = scan.next();
destNum = Integer.valueOf(srcNum, 8);
}
case 10 -> {
System.out.print("请输入十进制数:");
srcNum = scan.next();
destNum = Integer.valueOf(srcNum, 10);
}
case 16 -> {
System.out.print("请输入十六进制数:");
srcNum = scan.next();
destNum = Integer.valueOf(srcNum, 16);
}
}
}
switch (destBase) {
case 8 -> System.out.println("这个数的八进制是 " + Integer.toOctalString(destNum));
case 10 -> System.out.println("这个数的十进制是 " + destNum);
case 16 -> System.out.println("这个数的十六进制是 " + Integer.toHexString(destNum));
}
}
}