为什么不是';这种递归在Java中不起作用吗?

为什么不是';这种递归在Java中不起作用吗?,java,recursion,return,Java,Recursion,Return,我试图计算整数用户输入的阶乘,但它不会返回任何结果。为什么? 谢谢 import java.util.Scanner; `class App { public static int factorial(int n) { if (n == 0) { return 1; } else { int recurse = factorial(n - 1); int result =

我试图计算整数用户输入的阶乘,但它不会返回任何结果。为什么?

谢谢

    import java.util.Scanner;

`class App {

    public static int factorial(int n) {
        if (n == 0) {
            return 1;
        } else {
            int recurse = factorial(n - 1);
            int result = n * recurse;
            return result;
        }
    }

    public static void main(String[] args) {

        Scanner input = new Scanner(System.in);

        System.out.println("Enter an integer to calculate its factorial: ");
        int users = input.nextInt();

        factorial(users);

    }
}

代码中的问题是,没有为>显示输入数字的阶乘提供打印语句


代码中的问题是,您没有提供用于显示输入数字的阶乘的打印语句。仅返回一个值不会打印它。如果您在BlueJ环境中工作,则只能通过直接执行方法factorial来使用代码。谢谢。

可能会,但您没有打印或在某些waySystem.out.println(“factorial=“+factorial(users))中显示结果;return语句不会使我免于使用sysout吗?请写出Shark在方法main中所说的内容,替换factorial(users)@AliJ.,否,如果您希望打印返回值,则不必这样做。您需要仔细阅读从方法返回的值。