🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# Java 程序:使用递归查找自然数之和 > 原文: [https://www.programiz.com/java-programming/examples/sum-natural-numbers-recursion](https://www.programiz.com/java-programming/examples/sum-natural-numbers-recursion) #### 在此程序中,您将学习使用 Java 递归来查找自然数之和。 这是在递归函数的帮助下完成的。 正数 1、2、3... 称为自然数。 下面的程序从用户处获取一个正整数,然后计算得出给定数字的总和。 您也可以使用循环[查找自然数的总和](/java-programming/examples/sum-natural-numbers "Natural number sum using loops in Java")。 但是,您将在此处学习使用递归解决此问题。 ## 示例:使用递归的自然数之和 ```java public class AddNumbers { public static void main(String[] args) { int number = 20; int sum = addNumbers(number); System.out.println("Sum = " + sum); } public static int addNumbers(int num) { if (num != 0) return num + addNumbers(num - 1); else return num; } } ``` 运行该程序时,输出为: ```java Sum = 210 ``` 将求和的数字存储在变量`number`中。 最初,从`main()`函数调用`addNumbers()`,并将 20 作为参数传递。 `number`(20)被添加到`addNumbers(19)`的结果中。 在从`addNumbers()`到`addNumbers()`的下一个函数调用中,传递了 19,该值被添加到`addNumbers(18)`的结果中。 该过程一直持续到`num`等于 0。 当`num`等于 0 时,没有递归调用,这将整数和返回给`main()`函数。