Why isn't this recursion working in Java? : <p>I am trying to calculate the factorial of the integer user inputs, but it does not return anything. Why?</p>

<p>Thanks.</p>

<pre><code>    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);

    }
}
</code></pre>
