我有一个简单的问题,我在旧帖子中找不到任何相关信息。它与我的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
答案 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
设置为非空值,就像我在这里所做的那样。