Java 菜鸟教程

Java 流程控制

Java 数组

Java 面向对象(I)

Java 面向对象(II)

Java 面向对象(III)

Java 异常处理

Java 列表(List)

Java Queue(队列)

Java Map集合

Java Set集合

Java 输入输出(I/O)

Java Reader/Writer

Java 其他主题

Java程序使用递归查找自然数之和

Java 实例大全

在此程序中,您将学习使用Java递归来查找自然数之和。这是在递归函数的帮助下完成的。

正数1、2、3 ...称为自然数。下面的程序从用户处获取一个正整数,然后计算得出给定数字的总和。

您也可以使用循环找到自然数的总和  。但是,您将在此处学习使用递归解决此问题。

示例:使用递归的自然数之和

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;
    }
}

运行该程序时,输出为:

Sum = 210

将求和的数字存储在变量number中。

最初,从main()函数中调用addNumbers(),并以20作为参数传递。

number(20)被添加到addNumbers(19)的结果中。

在下一个从addNumbers()到addNumbers()的函数调用中,将传递19,该值将添加到addNumbers(18)的结果中。 此过程一直持续到num等于0。

当num等于0时,没有递归调用,然后将整数的和返回给main()函数。

Java 实例大全