感慨
Java也能这么好使啊,不容易…… ——进阶的JFarmer
题目要求P1143题目链接
进制转换其实也还好,但既然用了Java,那就得扬眉吐气一次,体会体会利用API轻松秒题的感受,机会来啦!
其实呢,进制转换的话,之前我记得自己写过一篇博客就涉及了这个问题 → Here
这里其实我们根本不需要编写冗长的代码,只需要调用java.lang.Integer的方法就完事啦: 先利用Integer.parseInt()将第一个数转化为数值,再用toString()转化成String类型的新的进制。
有个细节是,Java的十六进制输出是小写字母,要用一个toUpperCase()转成大写呀!
具体的实现请看这篇简单的题解代码:
AC代码(Java语言描述)import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int origin_radix = Integer.parseInt(scanner.nextLine());
String num = scanner.nextLine();
int now_radix = Integer.parseInt(scanner.nextLine());
scanner.close();
System.out.println(Integer.toString(Integer.parseInt(num, origin_radix), now_radix).toUpperCase());
}
}
所思所想
我们要具备造轮子的能力但也要会用轮子。 有时候面对水题,我们如果能利用一些体现语言特性的内置函数来简化编码,真是极好的!!