简单登录程序,不知道如何返回主菜单。

时间:2016-05-17 17:21:11

标签: java

我正在寻找一种能够在创建用户后返回菜单的方法。任何帮助,将不胜感激。我是编程新手,所以如果您需要其他信息,请告诉我。

    public static void main(String[] args) {
        System.out.println("MAIN MENU");
        System.out.println(" ");
        System.out.println("1) Creating a Login");
        System.out.println("2) Login");
        System.out.println("9) Quit");
        System.out.println(" ");
        System.out.println("Please enter your choice: ");
        System.out.println(" ");

        Scanner sc = new Scanner(System.in);
        int menuOption = sc.nextInt();
        while (menuOption != 9) {
            if (menuOption == 1) {

                System.out.println("Creating Username, please enter a string:");
                String user = sc.nextLine();
                user = sc.nextLine();
                System.out.println("Creating Password, please enter a string:");
                String pass = sc.nextLine();
                System.out.println("user is" + user);
                System.out.println("pass is" + pass);

                if (menuOption == 2) {
                    System.out.println("Please enter your Username");
                    String inpUser = sc.nextLine();
                    System.out.println("Now please enter your Password");
                    String inpPass = sc.nextLine();

                    if (inpUser.equals(user) && inpPass.equals(pass)) {
                        System.out.print("Credentials Accepted");
                    } else {
                        System.out.print("Credentials Declined Please try again.");
                    }
                }


                if (menuOption == 9) {
                    break;
                }
            }
        }
    }
}

3 个答案:

答案 0 :(得分:1)

如果需要重复某些代码块,请将其放在循环内。

答案 1 :(得分:0)

将菜单移动到while循环中,以便每次重新循环时都会打印它。

示例:

    public static void main(String[] args) {


    Scanner sc = new Scanner(System.in);
    int menuOption = 0;
    while (menuOption != 9) {

        System.out.println("MAIN MENU");
        System.out.println(" ");
        System.out.println("1) Creating a Login");
        System.out.println("2) Login");
        System.out.println("9) Quit");
        System.out.println(" ");
        System.out.println("Please enter your choice: ");
        System.out.println(" ");

        menuOption = sc.nextInt();

        switch(menuOption){
            case 1: {
                System.out.println("Creating Username, please enter a string:");
                String user = sc.nextLine();
                user = sc.nextLine();
                System.out.println("Creating Password, please enter a string:");
                String pass = sc.nextLine();
                System.out.println("user is" + user);
                System.out.println("pass is" + pass);
                break;
            }
            case 2: {
                System.out.println("Please enter your Username");
                String inpUser = sc.nextLine();
                System.out.println("Now please enter your Password");
                String inpPass = sc.nextLine();
                if (inpUser.equals(user) && inpPass.equals(pass)) {
                    System.out.print("Credentials Accepted");
                } else {
                    System.out.print("Credentials Declined Please try again.");
                }
                break;
            }
            case 9: {
              break;
            }
       }
    }
}

答案 2 :(得分:0)

如何创建新功能:

private static int menu (final Scanner sc) {
        System.out.println("MAIN MENU");
        System.out.println(" ");
        System.out.println("1) Creating a Login");
        System.out.println("2) Login");
        System.out.println("9) Quit");
        System.out.println(" ");
        System.out.println("Please enter your choice: ");
        System.out.println(" ");
        return sc.nextInt();
}

然后将您的main函数实现更改为:

public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        int menuOption = menu(sc);
        while (menuOption != 9) {
            if (menuOption == 1) {

                System.out.println("Creating Username, please enter a string:");
                String user = sc.nextLine();
                user = sc.nextLine();
                System.out.println("Creating Password, please enter a string:");
                String pass = sc.nextLine();
                System.out.println("user is" + user);
                System.out.println("pass is" + pass);
                menuOption = menu(sc); // everytime option 1 is selected, menu will be shown.

                if (menuOption == 2) {
                    System.out.println("Please enter your Username");
                    String inpUser = sc.nextLine();
                    System.out.println("Now please enter your Password");
                    String inpPass = sc.nextLine();

                    if (inpUser.equals(user) && inpPass.equals(pass)) {
                        System.out.print("Credentials Accepted");
                    } else {
                        System.out.print("Credentials Declined Please try again.");
                    }
                }


                if (menuOption == 9) {
                    break;
                }
            }
        }
    }
}