简单的递归阶乘函数

时间:2016-01-29 23:13:57

标签: java recursion

我在java中测试了很多选项,所以我想在java中做一个简单的递归函数。

我使用console来执行程序,它接收一个参数但总是当我尝试使用任何应该大于1的参数的递归时,它显示为0.

<dependency>
    <groupId>com.fasterxml.jackson.core</groupId>
    <artifactId>jackson-core</artifactId>
    <version>2.6.0</version> 
</dependency>

2 个答案:

答案 0 :(得分:3)

查看代码的这些行:

int xpi = factorial(numero-1);
System.out.println(factor);

您将函数的结果放到xpi变量,但随后打印factor变量。打印xpi应该有效。

System.out.println(xpi);

答案 1 :(得分:1)

您的方法不是递归的,因为它不会调用自身。这将是一个递归的例子:

public static int factorial(int n) {
    return n == 0 ? 1 : n * factorial(n-1);
}