题解 | #进制转换#
进制转换
https://www.nowcoder.com/practice/8f3df50d2b9043208c5eed283d1d4da6
import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); // 注意 hasNext 和 hasNextLine 的区别 String number = in.nextLine(); String n1 = number.substring(2); int output = 0; int beishu = 1; for (int j = 0; j < n1.length() - 1; j++) { beishu = 16 * beishu; } for (int i = 0; i < n1.length() - 1; i++) { char digit = n1.charAt(i); int dig = 0; if (digit == 'A') { dig = 10; } else if (digit == 'B') { dig = 11; } else if (digit == 'C') { dig = 12; } else if (digit == 'D') { dig = 13; } else if (digit == 'E') { dig = 14; } else if (digit == 'F') { dig = 15; } else { dig = Integer.parseInt(String.valueOf(digit)); } output += dig * beishu; beishu = beishu / 16; } char digit1 = n1.charAt(n1.length() - 1); int dig = 0; if (digit1 == 'A') { dig = 10; } else if (digit1 == 'B') { dig = 11; } else if (digit1 == 'C') { dig = 12; } else if (digit1 == 'D') { dig = 13; } else if (digit1 == 'E') { dig = 14; } else if (digit1 == 'F') { dig = 15; } else { dig = Integer.parseInt(String.valueOf(digit1));; } output += dig; System.out.println(output); } }