-2

コンソールにフレーズを入力すると、緑色のテキストの下に単語が 1 つだけ表示され、他の単語は表示されません。ここで何が間違っているのかわかりません。どんな助けでも大歓迎です。

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()単一の単語を読み取ります1nextLine()。行全体を読み取るために使用します。


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();

単語を 1 つだけ取得します。以下を使用する必要があります。

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