I'm a new programmer. I'm coding a user menu and I've a question on the do-while loop. When `main()` calls my first method containing my first loop it works as expected. However, when the user selects makes a choice and `customerMenu()` is called, it prints the menu 3 times. Why is this? Is there a mistake in my code?

---

```
public class Runner {

    public static void main(String[] args) {
        Menu m = new Menu ();

        m.mainMenu();
    }
}

```

---

```
public class Menu {

    private char choice;

    public void mainMenu () {

        try {
            do {
                System.out.println("Create Order");
                System.out.println("View Orders");
                System.out.println("Customers");
                System.out.println("Employees");

                choice = (char) System.in.read();

            } while (choice < '1' || choice > '4');

            System.out.println("\n");

            switch (choice) {
            case '1':
                System.out.println("Create Order page");
                break;
            case '2':
                System.out.println("View Orders page");
                break;
            case '3':
                customerMenu();
                //System.out.println("Customers page");
                break;
            case '4':
                System.out.println("Employees page");
                break;
            }

        } catch (Exception e) {
            System.out.println("Error");
        }
    }

    // Do loop prints 3 times

    public void customerMenu () {

        try {

            do {
                System.out.println("Add a Customer");
                System.out.println("Edit a Customer");
                System.out.println("Delete a Customer");

                choice = (char) System.in.read();

            } while (choice < '1' || choice > '3');

            System.out.println("\n");

            switch (choice) {
            case '1':
                System.out.println("Add a Customer action");
                break;
            case '2':
                System.out.println("Edit a Customer action");
                break;
            case '3':
                System.out.println("Delete a Customer action");
                break;
            }

        } catch (Exception e) {
            System.out.println("Error");
        }
    } 
}

```