一段递归java demo
时间: 2023-08-22 13:10:06 浏览: 44
下面是一个简单的递归 Java Demo,用于计算斐波那契数列的第 n 项:
```
public class Fibonacci {
public static int fibonacci(int n) {
if (n <= 1) {
return n;
} else {
return fibonacci(n-1) + fibonacci(n-2);
}
}
public static void main(String[] args) {
int n = 10; // 计算斐波那契数列的第10项
int result = fibonacci(n);
System.out.println("斐波那契数列的第" + n + "项是:" + result);
}
}
```
在这个 Demo 中,`fibonacci` 方法使用递归来计算斐波那契数列的第 n 项。如果 n 小于等于 1,直接返回 n,否则递归调用 `fibonacci(n-1)` 和 `fibonacci(n-2)`,并将它们的值相加。
在 `main` 方法中,我们将 n 设置为 10,调用 `fibonacci` 方法计算斐波那契数列的第 10 项,并将结果输出到控制台。
相关问题
写一个Java递归的demo
好的,以下是一个Java的递归函数示例:
```
public static void recursiveFunction(int num) {
if(num == 0) {
return;
}
System.out.println("num is " + num);
recursiveFunction(num - 1);
}
```
该函数将以num作为参数,每次递归函数时将num减1,并打印出当前的num值,直到num为0时停止递归。
用java写一段递归算法
以下是一个简单的递归算法,用于计算阶乘:
```
public static int factorial(int n) {
if (n == 0) {
return 1;
} else {
return n * factorial(n-1);
}
}
```
这个方法接收一个整数参数 n,并且返回 n 的阶乘。当 n = 0 时,返回 1,否则递归调用 factorial(n-1),然后将结果乘以 n。这个递归算法在计算小于 20 的数的阶乘时非常快,但是对于更大的数可能会导致栈溢出。