写一个递归循环,Java
时间: 2023-05-26 08:04:33 浏览: 65
代码,计算1到100的和。
Here's an example of a recursive function in Java that calculates the sum of the numbers from 1 to 100:
```
public static int sum(int n) {
if (n == 1) {
return 1;
}
return n + sum(n - 1);
}
public static void main(String[] args) {
System.out.println(sum(100));
}
```
相关问题
用java写一个递归循环
循环和递归是两种不同的迭代方式。循环是通过迭代器在一定次数内重复执行一组指令,而递归是通过函数在一定条件下重复调用自身来实现的。下面是一个使用Java编写的递归和循环示例:
递归代码示例:
```java
public static int factorial(int num) {
if (num == 0) { // 基本条件
return 1;
} else { // 递归调用
return num * factorial(num - 1);
}
}
// 调用递归函数
System.out.println(factorial(5)); // 输出:120
```
循环代码示例:
```java
public static int factorial(int num) {
int result = 1;
for (int i = 1; i <= num; i++) { // 循环条件
result *= i;
}
return result;
}
// 调用循环函数
System.out.println(factorial(5)); // 输出:120
```
以上两个函数实现的功能相同:计算一个数的阶乘。递归方式使用了基本条件和递归调用,而循环方式使用了一个迭代器来循环执行一组指令。
使用java写一个死循环递归
以下是一个使用Java实现的死循环递归示例:
```java
public class InfiniteRecursion {
public static void main(String[] args) {
recursiveCall();
}
private static void recursiveCall() {
recursiveCall();
}
}
```
这个程序将无限递归调用`recursiveCall()`方法,导致死循环。在这种情况下,程序将继续在内存中分配新的堆栈,直到堆栈溢出为止。为了避免这种情况,请确保在递归过程中有终止条件,并且递归深度不会过大。
阅读全文