-2

当我在控制台中输入一个短语时,绿色文本下方只出现一个单词,而其他单词没有出现。不知道我在这里做错了什么。任何帮助,将不胜感激。

Scanner keyboard = new Scanner(System.in);

System.out.println("Enter a sentence or phrase. It can be anything you want it to be: ");

//ask user for sentence or phrase
String p1 = keyboard.next(); 

System.out.println(c1); //display user sentence or phrase
4

2 回答 2

11

next()读取单个单词1,用于nextLine()读取整行。


1具体来说,next()“从该扫描器中查找并返回下一个完整标记。完整标记前后是与分隔符模式匹配的输入”。默认分隔符是\s+,一个连续的空白字符字符串。您可以通过 更改此分隔符useDelimiter

于 2013-06-28T22:48:34.850 回答
0

将您的代码更改为:

Scanner keyboard = new Scanner(System.in);

System.out.println("Enter a sentence or phrase. It can be anything you want it to be: ");

//ask user for sentence or phrase
String p1 = keyboard.nextLine(); 

System.out.println(c1); //display user sentence or phrase

问题是

keyboard.next();

只得到一个字。你需要使用:

keyboard.nextLine();
于 2013-06-29T00:01:41.573 回答