FileDocCategorySizeDatePackage
FactComputer.javaAPI DocExample1783Sat Jan 24 10:44:24 GMT 2004je3.basics

FactComputer

public class FactComputer extends Object
This program computes and displays the factorial of a number specified on the command line. It handles possible user input errors with try/catch.

Fields Summary
Constructors Summary
Methods Summary
public static voidmain(java.lang.String[] args)

        // Try to compute a factorial.
	// If something goes wrong, handle it in the catch clause below.
        try {
            int x = Integer.parseInt(args[0]);
            System.out.println(x + "! = " + Factorial4.factorial(x));
        }
        // The user forgot to specify an argument.
	// Thrown if args[0] is undefined.
        catch (ArrayIndexOutOfBoundsException e) {
            System.out.println("You must specify an argument");
            System.out.println("Usage: java FactComputer <number>");
        }
        // The argument is not a number.  Thrown by Integer.parseInt().
        catch (NumberFormatException e) {
            System.out.println("The argument you specify must be an integer");
        }
        // The argument is < 0.  Thrown by Factorial4.factorial()
        catch (IllegalArgumentException e) {
            // Display the message sent by the factorial() method:
            System.out.println("Bad argument: " + e.getMessage());
        }