import java.util.Scanner; public class BaseConverter { // 字符数组,用于表示大于9的数字 private static final char[] DIGITS = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'}; /** * 将给定进制的字符串转换为十进制整数 * * @param str 给定进制的字符串表示 * @param base 给定进制的基数 * @return 十进制整数 */ public static int toDecimal(String str, int base) { int result = 0; int power = 0; for (int i = str.length() - 1; i >= 0; i--) { char c = str.charAt(i); int digit = Character.isDigit(c) ? c - '0' : c - 'A' + 10; result += digit * Math.pow(base, power++); } return result; } }