在Hi-Lo猜谜游戏中跟踪最低分

时间:2013-10-30 01:01:02

标签: java swing

我正在为学校制作一个简单的Java高低游戏,用户必须猜测1到100之间的数字。为此,我使用Java Swing作为我的GUI。 我正在计算猜测,当用户猜出数字并按下重启按钮时会重置。

但是 - 我想跟踪猜测的最佳数量。所以我会有一个“当前猜测”计数器和一个“最佳”计数器。 “最佳”计数器应仅增加第一轮,然后相应地改变为最低猜测数。

我想过有一个currentScore和一个previousScore,但我不知道如何实现这个。有什么想法吗?

如果您需要我的界面的代码/图片,我可以提供。其他游戏类别低于以下。

public class HiLoGame {

    private int randomNum;
    private int guessCount;
    private String result;
    private Random generator = new Random();

    public HiLoGame() {
        randomNum = generator.nextInt(100) + 1;
    }

    public void randomNumber() {
        randomNum = generator.nextInt(100) + 1;
    }

    public int getRandomNum() {
        return randomNum;
    }

    public void checkGuess(int guess) {
        if (guess < randomNum) {
            result = Integer.toString(guess) + " - Too low, try again";
            guessCount++;
        } else if (guess > randomNum) {
            result = Integer.toString(guess) + " - Too high, try again";
            guessCount++;
        } else if (guess == randomNum) {
            guessCount++;
            result = Integer.toString(guess) + " - You guessed it!";
        }
    }

    public String getResult() {
        return result;
    }

    public int getGuessCount() {
        return guessCount;
    }

    public void resetGame() {
        guessCount = 0;
    } 

}

2 个答案:

答案 0 :(得分:0)

你说:

  

我想过有一个currentScore和一个previousScore,但我不知道如何实现这个。有什么想法吗?

是的,创建两个int变量currentScore和previousScore,并用结果填充它们。

我的回答似乎微不足道,但公平地说,问题也是如此。如果您需要更具体的帮助,您可能想要告诉我们更多关于您是如何被困的信息。

答案 1 :(得分:0)

你只能使用一个类变量,bestGuess初始化为整数MaxVal。

在checkGuess中,成功时,如果guessCount小于bestGuess,请将bestGuess更新为guessCount。

添加一个返回bestGuess的方法getBestGuess。

您还可以处理在任何成功猜测之前调用getBestGuess的情况,这样您就不会返回maxint。例如,有一个标志设置一次至少bestGuess被更新,如果在此之前调用getBestGuess,你可以抛出表示还没有猜测。