【发布时间】:2019-05-30 07:13:12
【问题描述】:
我使用递归来打印数字,直到 2(数字),我将零(0)作为输入传递并递归调用它,直到数字达到 2。 我试过这段代码,它显示了正确的输出。
class Test{
public static void main(String[] args) {
rec(0);
}
private static void rec(int num){
if(num<=2){
rec(++num);
}
System.out.println(num);
}
}
但我想通过以下方式做到这一点。
class Test{
public static void main(String[] args) {
rec(0);
}
private static void rec(int num){
if(num==2){
return;
}
rec(++num);
System.out.println(num);
}
}
预期输出:
2,1,0
但它显示:
2,1
为什么会这样?
【问题讨论】:
-
在寻求免费帮助时,至少要花时间正确格式化和缩进您的代码。
-
请修正缩进问题。
-
对不起,我是 stackoverflow 的新手
-
请告诉我如何缩进代码?以便下次上传。
-
@Coder1 "..how indent the code?" 有很多网站可以在线“美化/美化/格式化/缩进”您的代码,但通常我们让我们的IDE 为我们做这件事。每个像样的编辑器都应该有 Eclipse、NetBeans、IntelliJ 这样的工具。如果你的编辑器没有这样的工具,但它支持插件,通常有人为此编写插件,搜索它。