[英]How to reverse a number using recursion
我想只递归发送数字本身,而不发送更多变量!
因此,我编写了进行操作的代码,但没有停止点。
编码:
public static int upsideDown (int number) {
number += (number%10)*(Math.pow(10, String.valueOf(number).length()));
number %= 10;
return upsideDown (number);
}
您需要将要使用的数字存储在局部变量中,而不是修改number
。
您需要-而不是number %= 10
来(整数) 除以 10。
您需要将先前存储的数字乘以10以提高到string.length - 1
的幂; 您需要将此结果添加到对upsideDown
的递归调用的返回值中。 实际上,对于length - 1
的for循环,每次通过循环乘以10会比使用pow
更有效。
退出代码应该只是if (number == 0) return 0;
在方法开始时。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.