温馨提示×

java 递归调用怎样避免无限递归

小樊
94
2024-11-28 09:26:37
栏目: 编程语言
Java开发者专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Java中,要避免无限递归,您需要确保在递归方法中有一个明确的终止条件。当满足此终止条件时,递归将停止调用自身。以下是一个简单的示例,说明如何避免无限递归:

public class RecursionExample {

    public static void main(String[] args) {
        int number = 5;
        System.out.println("Factorial of " + number + " is: " + factorial(number));
    }

    public static int factorial(int n) {
        // 终止条件:如果n为0或1,返回1(0!和1!都等于1)
        if (n == 0 || n == 1) {
            return 1;
        }

        // 递归调用:计算n的阶乘,即n乘以(n-1)的阶乘
        return n * factorial(n - 1);
    }
}

在这个例子中,factorial方法有一个明确的终止条件(n == 0 || n == 1),当满足此条件时,递归调用将停止。因此,这个示例不会导致无限递归。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:java.lang.stackoverflowerror错误怎么解决

0