504、七进制数
给定一个整数 num,将其转化为 7 进制,并以字符串形式输出。
public class Solution504 {
/*
504. 七进制数
给定一个整数 num,将其转化为 7 进制,并以字符串形式输出。
*/
public String convertToBase7(int num) {
//定义一个n,用于后续条件表达式的判断
int n = num;
//如果整数num小于0,则求绝对值
if (num < 0) {
num = Math.abs(num);
}
StringBuilder stringBuilder = new StringBuilder();
//先对num取余数,再把num除7对num赋值,一直迭代,如果num等于0的时候则停止
do {
stringBuilder.append(num % 7);
num = num / 7;
} while (num != 0);
//这样计算出来的个位在最后,依次是十位、百位...所有需要对此字符进行反转
stringBuilder.reverse();
return n < 0 ? ("-" + stringBuilder.toString()) : stringBuilder.toString();
}
public String convertToBase71(int num) {
//调用API,Integer 类中有API可以直接把十进制转换成其他进制。
return Integer.toString(num, 7);
}
public static void main(String[] args) {
System.out.println("append:" + 100 % 7);
System.out.println(100 / 7);
System.out.println("append:" + 14 % 7);
System.out.println(14 / 7);
System.out.println("append:" + 2 % 7);
System.out.println(2 / 7);
}
}