首页 > 解决方案 > 随机数猜测器 - 无法输入

问题描述

我正在尝试一个 java 挑战,我猜一个随机数,程序告诉我它是否正确。

但是,程序在 while 循环处停止,并告诉我只能在程序运行时输入:

public class javaChallenge1
{
    // Instance variables
    int number = 0;
    int guess = 0;
    boolean gameFinished = false;

    // Core variables
    Scanner keyboard = new Scanner(System.in);
    Random rand =  new Random();

    public void sampleMethod()
    {
        number = rand.nextInt(100);
        System.out.println("Guess the number generated.");
        while (gameFinished = false)
        {
            guess = keyboard.nextInt();
            keyboard.nextLine();

            if (guess == number) {
                System.out.println("Congrats! You have guessed the number correctly.");
                gameFinished = true;
            } else {
                System.out.println("Bad luck. Try again.");
            }
            keyboard.nextLine();
        }
    }
}

标签: java

解决方案


错误在这一行:

while(gameFinished = false)

您不检查该值是否为 false,而是将值 false 分配给您的变量。

你应该写==而不是比较=值而不是分配

while(gameFinished == false)

推荐阅读