当用户输入输入密钥时,循环没有关闭?

时间:2013-10-17 00:03:14

标签: java while-loop

我有一个简单的问题,我在旧帖子中找不到任何相关信息。它与我的while循环有关。当用户输入回车键时,即当患者ID为空时,我希望我的while循环结束。如果我输入第一轮输入,则while循环终止,但如果我输入大量信息并运行循环几次点击输入,则当它再次询问患者ID时不会结束循环。这是代码。我为while()尝试了很多不同的变体。谢谢你的帮助!

    //Obtain Patient Id
    System.out.print("Enter patient: ");
    patientID= kb.next();

    //While patient id is not empty
    while(patientID.length()==0) {

    //  Obtain patient ID
    System.out.print("\nEnter patient: ");
    patientID=kb.next();

    //End While

1 个答案:

答案 0 :(得分:1)

有一些问题。您需要使用nextLine()来读取一行。 next()只是读取令牌。

patientID=kb.nextLine();
 //While patient id is not empty
while(patientID.length()!=0) {

//  Obtain patient ID
System.out.print("\nEnter patient: ");
patientID=kb.nextLine();

}

while循环还应该显示“当患者ID不为空时”。在循环开始之前,您需要将patientID设置为非空值,就像我在这里所做的那样。