Java扫描程序实用程序的怪异行为

时间:2019-03-21 07:07:30

标签: java java.util.scanner user-input

我不确定自己有多蠢,或者我是否缺少一些简单的东西;无论如何,我正在尝试使用扫描仪实用程序从用户那里获得基本的用户名和密码输入。

我确定扫描仪已正确初始化(扫描仪sc =新的扫描仪(System.in)

System.out.print("Username or Email: ");
String username = sc.nextLine();
System.out.print("\nPassword: ");
String password = sc.nextLine();

我遇到的问题是,当我运行代码的这一部分时(上图),我得到的输出看起来像这样(下图),在这里我开始输入密码部分。好像只是跳过对扫描仪的第一个调用一样。

Username or Email: 
Password: (this is where my input goes)

我唯一的猜测是扫描仪将第二次打印作为输入,但是我不确定,因此非常感谢任何帮助。

p.s如果有帮助,我将整个方法留在底部。

谢谢。

public static void loginPage() throws SQLException{
    int requestCounter = 0;
    do {
        System.out.print("Username or Email: ");
        String username = sc.nextLine();
        System.out.print("\nPassword: ");
        String password = sc.nextLine();
        boolean validLoginRequest = accountLoginCheck(username, password);
        if (validLoginRequest) {
            break;
        } else {
            requestCounter++;
        }
    } while (requestCounter < 3);
    if (requestCounter == 3) {
        System.out.println("Too many attempts");
        return;
    }
    System.out.print("TO MAIN MENU");

1 个答案:

答案 0 :(得分:0)

从System.out.print(“ \ nPassword:”)中删除\ n;

Username or Email: myemail
Password: pass