我想在递归中仅发送数字本身而不是更多变量!!!
所以,我制作了一个代码来进行操作,但我没有停止点。
代码:
public static int upsideDown (int number) {
number += (number%10)*(Math.pow(10, String.valueOf(number).length()));
number %= 10;
return upsideDown (number);
}
答案 0 :(得分:0)
您需要将正在使用的数字存储在本地变量中,而不是修改number
。
您需要 - 而不是number %= 10
- (整数)除以 10。
你需要乘以 10 先前存储的数字 10 提升到string.length - 1
的力量;你需要将的结果添加到递归调用upsideDown
的返回值。
实际上,for length - 1
的for循环,每次循环乘以10将比使用pow
更有效。
退出代码在方法开始时应该只是if (number == 0) return 0;
。