我有这段代码
System.out.println("Enter surname to search for:");
String choice2;
choice2= sc.nextLine();
在我看来,这应该有效,但由于某种原因,程序没有暂停等待用户输入姓氏,下一行代码就在它之后执行。请问这个代码有问题吗?
答案 0 :(得分:1)
此代码是正确的,并且已经等到用户输入名称, 但是如果您输入名称之前按Enter键不会暂停,因为您使用 sc.nextLine(),但 sc.next()会等待你直到输入文字
答案 1 :(得分:0)
这样可以尝试打印choice2
的值,例如“Hello”:
System.out.println("Enter surname to search for:");
String choice2;
choice2= sc.nextLine();
System.out.println("Hello "+choice2);
让我们看一下这条线是否正在打印,但不应该。
如果打印Hello
,则无其他任何意味着您输入了额外的新行,因此如果choice2为choice2= sc.nextLine();
,则只需在下方再次调用""
。
System.out.println("Enter surname to search for:");
String choice2;
choice2= sc.nextLine();
while(choice2.equels("").trim()){
choice2= sc.nextLine();
}
有关详细信息,请访问以下网站。