【发布时间】:2021-02-26 13:29:50
【问题描述】:
我试图使用递归打印数字的数字。我定义的函数返回所有数字,但我无法打印最后一个数字。任何人都可以指出代码中有什么问题吗?有没有比这更好的递归逻辑?
public static int printIndividualDigits(int num){
if((num/10) != 0){
System.out.print(printIndividualDigits(num/10)+ ",");
}
if(num != 0){
return num%10;
}else{
return 0;
}
}
【问题讨论】:
-
代码有效......我认为downvote太苛刻......我只是好奇我是否可以改进代码。请告诉我关于否决票....
-
当我运行您的代码时,我得到的输出
4,3,5,6,7,9没有丢失任何最后一位数字。究竟是什么让您认为输出中缺少数字? -
如果您的代码有效并且没有错误,您应该知道您的问题不适合stackoverflow,而是属于codereview.stackexchange.com
-
如果你用调试器一步一步地运行代码,应该很容易看出你的代码为什么不能工作,并找到解决方法。
-
这里有个小提示:你的方法被命名为
"printIndividualDigits"。真的需要返回int吗?