键盘输入来自字符串

时间:2013-01-16 09:39:36

标签: java string

我有这段代码

 System.out.println("Enter surname to search for:");
 String choice2;
 choice2= sc.nextLine(); 

在我看来,这应该有效,但由于某种原因,程序没有暂停等待用户输入姓氏,下一行代码就在它之后执行。请问这个代码有问题吗?

2 个答案:

答案 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();      
  }

有关详细信息,请访问以下网站。

Scanner

相关问题