-1
while (goodInput=false)
        {
            try
            {
                System.out.println("How long is the word you would like to guess?");
                wordSize=scan.nextInt();
                while(wordSize>word.longestWord())
                {
                    System.out.println("There are no words that big! Please enter another number");
                    wordSize=scan.nextInt();
                }
                goodInput=true;
            }
            catch(InputMismatchException ime)
            {
                System.out.println("Thats not a number! Try again");
            }

        }

ユーザーに番号の入力を求めようとしていますが、正しく実行できません。正しい入力が入力されるまで実行し続けたい。

4

4 に答える 4

2

1つの問題は次のとおりです。

while (goodInput=false)

ループがまったく実行されない原因falsegoodInputなる割り当てwhile(false)

に変更します

while (!goodInput)
于 2012-12-09T17:22:55.187 に答える
0

ループ内の条件は次のwhileようになります

 while(goodinput == false)

あなたがしていることは、false結果として最終結果をもたらすgoodinputに割り当てることfalseです。次のステートメントの出力を参照してください。

boolean a;
System.out.println((a = false));

そこでは等式演算子が必要です。

于 2012-12-09T17:22:59.173 に答える
0

まず、

while (goodInput=false) 

に割り当てfalseています。演算子goodInputを使用して、であるかどうかを確認する必要があります==goodInputfalse

while (goodInput==false)

あるいは単に

while (!goodInput) would suffice

これがJavaの等式演算子への参照です

于 2012-12-09T17:23:14.057 に答える
0

あなたは書く必要があります

while (goodInput == false)

またはさらに良い

while (!goodInput)

それ以外の

while (goodInput = false)

goodInput最初のものはの値をと比較しfalse、2番目のものはの値を否定しgoodInput、バージョンはに割り当てfalseますgoodInput

于 2012-12-09T17:23:31.410 に答える