在while循环中进行扫描仪输入验证
我必须在 循环中显示Scanner输入:用户必须插入输入,直到他写下“ quit”为止。因此,我必须验证每个输入以检查他是否写出“
quit”。我怎样才能做到这一点?
while (!scanner.nextLine().equals("quit")) { System.out.println("Insert question code:");
String question = scanner.nextLine();
System.out.println("Insert answer code:");
String answer = scanner.nextLine();
service.storeResults(question, answer); // This stores given inputs on db
}
这行不通。如何验证每个用户的输入?
回答:
问题是nextLine()
“使该扫描程序前进到当前行之外”。因此,当您调用nextLine()
该while
条件并且不保存返回值时,您将丢失用户输入的那一行。nextLine()
对第3行的调用返回另一行。
您可以尝试这样的事情
Scanner scanner=new Scanner(System.in); while (true) {
System.out.println("Insert question code:");
String question = scanner.nextLine();
if(question.equals("quit")){
break;
}
System.out.println("Insert answer code:");
String answer = scanner.nextLine();
if(answer.equals("quit")){
break;
}
service.storeResults(question, answer);
}
以上是 在while循环中进行扫描仪输入验证 的全部内容, 来源链接: utcz.com/qa/398063.html