数字当てゲームの「はい/いいえ」ループが正しく機能しない。ユーザーに「はい」または「いいえ」と言うオプションも与えない

2020-02-26 java loops while-loop

私は現在、乱数推測ゲームを作っています。ゲーム自体は正常に動作しますが、Y / N(はい/いいえ)ループが正しく機能していないようです。私がゲームをプレイするとき、正しい数字を推測した後で何も入力するオプションすら与えられません。それはおそらく単純な間違いであることは知っていますが、それを理解することができないようです。私は「do-while」ループを試してみましたが、うまくいきませんでした。

    while (userWin == false) 
    {
        System.out.println ("Guess a number from 1 - 100: ");
        Scanner userInput = new Scanner (System.in);
        Random correctRandomNumber = new Random();
        int correctRandomNumberInt = correctRandomNumber.nextInt ((100) + 1);

        int guessCount = 0;
        int userGuessInt;


        while (userAnswer == 'Y')
        {

            userGuessInt = userInput.nextInt();
            guessCount = guessCount + 1;

            if (userGuessInt > correctRandomNumberInt)
            {
                System.out.println ("Too high! Guess again!");
            }
            else if (userGuessInt < correctRandomNumberInt)
            {
                System.out.println ("Too low! Guess again!");
            }
            else
            {
                userWin = true;
                System.out.println ("You win!");
                System.out.println ("Amount of guesses: " + guessCount + " to get the correct answer of " + correctRandomNumberInt + ".");

            }  
        }   
        System.out.println ("Wanna play again? Please answer with (Y/N): ");
        String userAnswerString = userInput.nextLine();
        if (userAnswerString.equals ("Y"))
        {
            userAnswer = 'Y';
        }
        else
        {
            userAnswer = 'N';
        } 
    }
}

Answers

Related