java递归简单例子如何创建

原创
ithorizon 8个月前 (09-06) 阅读数 99 #Java

Java递归简洁例子:计算阶乘

在编程语言中,递归是一种强势的技术,它允许函数调用自己。Java也赞成递归。下面是一个使用Java编写的基础递归例子,该例子计算给定整数的阶乘。

递归阶乘函数的实现

阶乘函数是递归的经典例子。阶乘函数的定义如下:

  • n! = n * (n-1)!,当n > 1
  • 0! = 1

以下是用Java实现的递归计算阶乘的代码:

public class Factorial {

// 递归计算阶乘的函数

public static long factorial(int n) {

if (n <= 1) { // 递归终止条件

return 1;

} else {

return n * factorial(n - 1); // 递归调用

}

}

public static void main(String[] args) {

int number = 5; // 需要计算阶乘的数

long result = factorial(number); // 调用递归函数

System.out.println(number + "! = " + result);

}

}

代码解释

上面的代码定义了一个名为Factorial的类,并且包含一个静态方法factorial。该方法接收一个整数参数n,并且使用递归来计算其阶乘。

以下是对递归函数的逐步解释:

  • 检查递归的终止条件。如果n小于或等于1,函数返回1,由于0的阶乘是1,也是递归调用的基础情况。
  • 如果n大于1,函数返回n乘以对n-1调用同一函数的于是。

运行于是

当你运行上述代码时,它会输出以下内容:

5! = 120

这是由于5的阶乘(5!)是120。

注意

递归很强势,但是使用它需要谨慎。如果递归没有正确设置终止条件,或者递归层次太深,或许会致使栈溢出谬误。


本文由IT视界版权所有,禁止未经同意的情况下转发

文章标签: Java


热门