Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.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_Java.util.scanner - Fatal编程技术网

Java 仅返回一个单词的字符串输出

Java 仅返回一个单词的字符串输出,java,java.util.scanner,Java,Java.util.scanner,这个程序运行得很好,但由于某些原因,当我要求输入名称时,它只会保存响应中的第一个单词。例如,如果我以后在输出时输入“Jon Snow”,它将只显示“Jon” 你读的不是整行,而是第一个单词 对于Scanner类,next()函数读取下一个标记化输入,而nextLine()检索整行,直到回车(\n) 编辑:尝试下面的代码 input.nextLine(); // IMP: To get the carriage return after choice is typed //name System.

这个程序运行得很好,但由于某些原因,当我要求输入名称时,它只会保存响应中的第一个单词。例如,如果我以后在输出时输入“Jon Snow”,它将只显示“Jon”

你读的不是整行,而是第一个单词

对于
Scanner
类,
next()
函数读取下一个标记化输入,而
nextLine()
检索整行,直到回车(
\n

编辑:尝试下面的代码

input.nextLine(); // IMP: To get the carriage return after choice is typed
//name
System.out.println("");                                     
System.out.print("Enter customer's name: ");
name = input.nextLine();                                           

//name of item purchased
System.out.print("Enter item purchased: ");
item = input.nextLine(); 
试试这个

使用
next()
将为您提供
第一个单词
,但如果您想要
整行,请使用nextLine()

例如:


谢谢你的帮助。但我还是有个问题。每当我这样编译它时,它都会将姓氏保存为“item”字符串。
name = input.nextLine()
Eg. "happy days again"
next() // "happy"
next() // "days"
next() // "again"

or,

nextLine() // "happy days again"
input.nextLine(); // IMP: To get the carriage return after choice is typed
//name
System.out.println("");                                     
System.out.print("Enter customer's name: ");
name = input.nextLine();                                           

//name of item purchased
System.out.print("Enter item purchased: ");
item = input.nextLine(); 
name = input.nextLine();
   Scanner scan = new Scanner(System.in);
   name = input.nextLine();