ループのためのセンチネルとして文字列入力(yesまたはno)を使用しようとしています。ループはswitchステートメントを繰り返し、最後にユーザーにyesまたはnoの質問を促します。答えとして「はい」と入力するまで、ループは引き続きユーザーからデータを受け取ります。この問題は、センチネルに新しい価値を与えようとすることによってもたらされます。Javaの文字列変数の入力を変更する
***コメントを確認して変更を加えました。更新されたコードは次のとおりです。
Scanner input = new Scanner (System.in);
System.out.print("Please enter a product number, 1 - 5: ");
int product = input.nextInt();
double sum = 0;
boolean complete = false;
while (!complete) {
switch (product){
case 1: sum = sum + 2.98;
break;
case 2: sum = sum + 4.50;
break;
case 3: sum = sum + 9.98;
break;
case 4: sum = sum + 4.49;
break;
case 5: sum = sum + 6.87;
break;
}
System.out.print("Is your order complete? Please type true or false:");
complete = in.nextLine();
}
すべてが動作していますが、私はまだセンチネルを破るプロンプトに問題があります。私はループを終了するためにユーザーがtrueを入力する場所に設定しようとしています。私は何か見落としたと思っています。私は大いに助けに感謝します、ありがとう。
これはコンパイルされますか? completeがStringであるかのように見えますが、while(!)を持つことはできません。それは許されないだけです。 –