これが私が簡単なゲームを作るために書いているいくつかの基本的なコードの骨組みです:
Scanner in = new Scanner(System.in);
String name;
String playing;
int age;
do {
System.out.println("Enter your name");
name = in.nextLine();
System.out.println("Enter your age");
age = in.nextInt();
System.out.println("Play again?");
playing = in.nextLine();
} while (true);
コードは期待どおりに機能しません。たとえば、コードの期待される機能は次のとおりです。
Enter your name
John
Enter your age
20
Play again?
Yes
Enter your name
Bill
...
ただし、Playagain行の読み取りに問題があります。これが実際の出力です。
Enter your name
John
Enter your age
20
Play again?
Enter your name
ご覧のとおり、「もう一度再生しますか?」の前に「名前を入力してください」が再度表示されます。入力を受け入れることができます。再生変数をデバッグするときは「」に設定されているため、表示できる入力がなく、何が消費されているのかわかりません。助けていただければ幸いです、ありがとう!