话不多数,直接上代码
十进制转其他进制:
//将十进制数字a转成b进制数
public static void an(int a, int b) {
if (a / b != 0) {
an(a / b, b);
}
if (a % b >= 10) {
System.out.print((char) ((a % b) + 55));
} else {
System.out.print(a % b);
}
}
其他进制转十进制:
//将b进制的数字a转成十进制
public static void anOut(String a, int b) {
char[] chars = a.toCharArray();
int num = 0;
for (int i = 0; i < chars.length; i++) {
int t = chars[i] - '0';
if (t >= 10) {
t = chars[i] - 55;
}
num += t * Math.pow(b, chars.length - i - 1);
}
System.out.println(num);
}
主函数调用:
public static void main(String[] args) {
an(26, 16);
System.out.println();
anOut("1A", 16);
}