递归程序到达return语句,但跳回到方法调用

时间:2016-02-21 17:11:36

标签: java recursion

当我通过eclipse的调试器运行这个程序时,在方法Items[0]中,一旦我小于randomRecursion,它会跳到返回,但然后跳回到{ {1}}致电。这是为什么?

0

1 个答案:

答案 0 :(得分:1)

调用递归方法并不会终止您的方法 - 您错过了那里的return。一旦你完成了这个,就像评论中提到的@pjs一样,你真的不需要while循环 - 你只需要一个简单的条件语句:

public static double randomRecursion(double a, double b, int i) {
    if (i > 0) { 
        b = ((1 / a) - a) * b;
        i = i - 1;
        // return was missing here
        return RandomRecursion(a, b, i);
    }
    return b;
}