Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从字符串输入的键盘_Java_String - Fatal编程技术网

Java 从字符串输入的键盘

Java 从字符串输入的键盘,java,string,Java,String,我有这个密码 System.out.println("Enter surname to search for:"); String choice2; choice2= sc.nextLine(); 在我看来,这应该是可行的,但出于某种原因,程序没有暂停等待用户输入姓氏,下一行代码正好在它之后执行。请问这个代码有什么问题吗 这将起作用。请尝试打印choice2的值,例如“Hello”: 让我们看看这行是否正在打印,但不应该 如果它的printHello和其他任何内容都不表示您输入了额外的

我有这个密码

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

在我看来,这应该是可行的,但出于某种原因,程序没有暂停等待用户输入姓氏,下一行代码正好在它之后执行。请问这个代码有什么问题吗

这将起作用。请尝试打印
choice2
的值,例如“Hello”:

让我们看看这行是否正在打印,但不应该

如果它的print
Hello
和其他任何内容都不表示您输入了额外的新行,那么只需调用
choice2=sc.nextLine()
,则再次在下面添加条件

欲了解更多详情,请访问以下网站


此代码正确,并已等待用户输入名称,
但是如果您在输入名称之前按Enter键,则此代码不会暂停,因为您使用了sc.nextLine(),但是sc.next()将等待您输入文本

sc是什么?如果您在“输入要搜索的姓氏:”之后发布一个“您是否按enter键了?”“diplsayed on your console?Scanner sc=新扫描仪(System.in)”,则会更容易提供帮助;嗯,sscce?它是链接的,点击它:)@dinesh707,这是从扫描仪输入的字符串,而不是从字符串输入的键盘!它正在打印没有字符串变量的行,只是“Hello”@Alya'a Gamal给了我解决方案sc.next()而不是sc.nextLine()next()返回下一个令牌,nextLine()返回下一个令牌。如果我们知道两者的区别,那就好了。标记是一个由非空白字符组成的字符串,周围有空格。下一行以换行符结尾。@user1928374如果这个答案对您有帮助,您应该向上投票并接受。
 System.out.println("Enter surname to search for:");
 String choice2;
 choice2= sc.nextLine();
 System.out.println("Hello "+choice2);
 System.out.println("Enter surname to search for:");
 String choice2;
 choice2= sc.nextLine(); 
 while(choice2.equels("").trim()){
     choice2= sc.nextLine();      
  }