【发布时间】:2020-08-27 09:13:09
【问题描述】:
您好,我对 java 编码(初级)非常陌生,我正在学习如何使用递归,但我正在做一些练习,我使用最小值和最大值来获取范围。
我希望输出类似于 min 为 2 且 max 为 10 它打印 2 3 4 5 6 7 8 9 10 作为输出。它也在 min 和 max 之间打印出来,但我不知道我实际上是如何获得输出的。
代码如下:
//package methods;
public class MethodsRecursiveRange {
public static void main(String[] args) {
int count = 0;
System.out.println( Range(count));
}
public static int Range (int count) {
int min = 2;
int max = 10;
for ( int i = 0; i < max ; i++) {
System.out.println(Range(count));
Range(count);
}
return (0);
}
}
递归函数出现stack overflow 错误。
【问题讨论】:
-
您需要为递归函数设置一个停止条件。否则递归函数会一直运行下去。
-
我该怎么做?我如何让它停止?我也应该添加哪一行?
-
也许可以尝试一些有用的递归问题
-
我认为如果你先下定决心递归方法应该是什么样子会更好。您可以在Recursion In Java 下找到一篇易于阅读的文章
-
@NISHANAJIHAH 您能否接受以下其中一项或解释为什么这些答案不起作用?