6

私の質問は、ユーザーが入力した文字の総数を取得したい場合、どの方法を使用すればよいですか?配列を使用せずに、.length()を使用しようとしましたが、姓名からのすべての文字が返されるわけではなく、名のみが返されました。

これが私のコードの例です。(プログラミングで本当に新しいimを笑わないでください:))

System.out.print("Enter your first and last name: ");
String yourName = keyboard.next();
System.out.println("Your name has a total of " + yourName.length() + " numbers");

何が起こったのかというと、「Neo Matrix」と入力すると、3しか返されません。

助けていただければ幸いです。ありがとう!

4

2 に答える 2

9

このメソッドnext()は、名前の最初の単語のみを読み取ります。nextLine()代わりに試してください。

于 2012-04-13T19:19:38.023 に答える
3

Scanner.nextLine()行全体を読み取るために使用することをお勧めします。

next()String空白に従ってトークン化するため、期待どおりに最初の単語のみが取得されます。

于 2012-04-13T19:20:26.613 に答える