How can I exit a Java program without System.exit?(From User Input?)
<p>Here is my code. I am not sure how to exit the program using a return value. Any ideas? THis is the last step from my assignment.
Important areas are marked with ///////
I hear return works but when I change void in main to int, the program says main must be void.</p>

<pre><code>import java.util.Scanner;


public class CommissionCalculator {

    public static void main(String args[]) {
        // Initialize a Scanner to read input from the command line
        Scanner ItemSelect = new Scanner(System.in);
        double comp = 200.00;
        double item1 = 239.99;
        double item2 = 129.75;
        double item3 = 99.95;
        double item4 = 350.89;
        double comm = 0.09;
        int choice;


        /* Note that we'll be doing this at least once and most likely multiple times...
         * Prompt the user with a menu of the four items and their values (this information is included in the problem statement)
         */
        System.out.println("Item\tValue");
        System.out.println("1\t$239.99");
        System.out.println("2\t$129.75");
        System.out.println("3\t$99.95");
        System.out.println("4\t$350.89"); 
        /* Display the user's current compensation */
        System.out.printf("Current compensation: $%.2f", comp);


        /* 
         * Prompt and take input from the user (you may assume that they will only enter int values)
         * They'll enter an item number (1 - 4) to record its sale or 0 to exit
         * 
         * NOTE: THE U0SER DOES NOT ENTER PRICES DIRECTLY... THEY ENTER ITEM NUMBERS TO INDICATE WHAT WAS SOLD
         * NOTE: THE USER MAY ENTER THE SAME ITEM NUMBRER MULTIPLE TIMES
         * 
         * If the user provides invalid input (a value other than 0 - 4) display "ERROR: Invalid input!" and prompt them again
         */
        do
        {

            System.out.print("\nPlease select an item from the " +
                               "list above (or enter 0 to exit): ");
            choice = ItemSelect.nextInt();

            {   
                if (choice != 1 &amp;&amp; choice != 2 &amp;&amp; choice != 3 &amp;&amp; choice != 4 &amp;&amp; choice != 0)
                {
                    do
                      {
                        System.out.print("ERROR: Invalid Input!\n");
                        System.out.println("Item\tValue");
                        System.out.println("1\t$239.99");
                        System.out.println("2\t$129.75");
                        System.out.println("3\t$99.95");
                        System.out.println("4\t$350.89");
                        System.out.printf("Current compensation: $%.2f", comp);
                        System.out.print("\nPlease select an item from the " +
                                   "list above (or enter 0 to exit): ");
                        choice = ItemSelect.nextInt();
                        if (choice == 1)
                        {
                            comp += (comm * item1);
                            System.out.printf("Current compensation: $%.2f", comp);
                        }
                        if (choice == 2)
                        {
                            comp += (comm * item2);
                            System.out.printf("Current compensation: $%.2f", comp);
                        }
                        if (choice == 3)
                        {
                            comp += (comm * item3);
                            System.out.printf("Current compensation: $%.2f", comp);
                        }
                        if (choice == 4)
                        {
                            comp += (comm * item4);
                            System.out.printf("Current compensation: $%.2f", comp);
                        }
                        if (choice == 0)
                        {
                            System.out.printf("Total Earnings: $%.2f", comp);
                            System.exit(0); ///////
                        }

                      }while (choice != 1 &amp;&amp; choice != 2 &amp;&amp; choice != 3 &amp;&amp; choice != 4 &amp;&amp; choice != 0); 

                }
                else
                {
                    if (choice == 1)
                    {
                        comp += (comm * item1);
                        System.out.printf("Current compensation: $%.2f", comp);
                    }
                    if (choice == 2)
                    {
                        comp += (comm * item2);
                        System.out.printf("Current compensation: $%.2f", comp);
                    }
                    if (choice == 3)
                    {
                        comp += (comm * item3);
                        System.out.printf("Current compensation: $%.2f", comp);
                    }
                    if (choice == 4)
                    {
                        comp += (comm * item4);
                        System.out.printf("Current compensation: $%.2f", comp);
                    }
                    if (choice == 0)
                    {
                        System.out.printf("Total Earnings: $%.2f", comp);
                        System.exit(0);
                    }
                }

            }
        }while (choice != 0);

        /* After the user enters 0, display the salesperson's earnings in the format "Total earnings: $NNN.NN" and exit
         * For example, if the salesperson sold two item 3s this week the final output would be "Total earnings: $217.99"
         */
        if (choice == 0)
        {
            System.out.printf("Total Earnings: $%.2f", comp);
            System.exit(0);   ///////
        }
        ItemSelect.close();
        System.exit(0);    ///////
    }
}
</code></pre>
