使用tester类的java猜谜游戏
我正在用java代码创建一个猜谜游戏程序。我对主类和tester类的运行有问题。任何帮助都将不胜感激。游戏的说明是,计算机生成一个随机数,用户必须在7次或更少的猜测中猜出这个数字。如果猜测超过7,则游戏结束,并询问用户是否想“再次玩”
下面是我的猜测课:
import java.util.Random;
public class Guess
{
int computersNumber; // A random number picked by the computer.
int usersGuess = 0; // A number entered by user as a guess.
int guessCount = 0; // Number of guesses the user has made.
Random random = new Random();
int randomNumber = random.nextInt(100);
public Guess(int n)
{
usersGuess = n;
}
public boolean getGuess()
{
boolean isValid = false;
if (isValid)
{
return false;
}
if (usersGuess == computersNumber)
{
return true;
}
return isValid;
}
public boolean isGuessCorrect()
{
return getGuess() == computersNumber;
}
public int getCount()
{
guessCount ++;
return guessCount;
}
boolean playAgain;
}
测试人员/主要类别:
import java.util.Scanner;
public class GuessTester
{
public static void main(String[] args)
{
Scanner in = new Scanner(System.in);
System.out.println("Let's play a game!");
System.out.println();
System.out.println("The computer will generate a number between 0 and 100. You will have up to seven guesses"
+ "to figure out what the number is. Good luck!");
System.out.println();
System.out.print("What is your first guess? ");
int n = in.nextInt();
Guess guess = new Guess(n);
if (guess.getGuess == computersNumber)
{
System.out.println("That's Correct! ");
}
if (getCount == 7)
{
System.out.println("You lose, you didn't get the number in 7 guesses.");
}
System.out.println("Would you like to play again? ");
in.nextBoolean();
System.out.println();
System.out.println("Thanks for playing.");
in.close();
}
}
# 1 楼答案
代码中有一些东西是无法编译的。你把所有代码都发了吗
第一件事:如果你有一个}并且你想访问它的方法,你需要先实例化一个
class
{Object
的class
:接下来,为了实际访问
guess
的方法,它是这样写的:然而,在您的示例中,变量
computersNumber
未在主类中定义,但它是Guess
类的成员。由于computersNumber
和getGuess()
方法都是Guess
类的一部分,因此最好从该类中实际访问它们并在那里进行比较。也许用另一种方法:我在
Guess
类中看到的另一件事是,您在getGuess()
中访问了一些布尔变量,这些变量没有定义:来自哪里?它的定义是什么
编辑:一点道路提示:
您可以生成一个介于0和100之间的随机数,如下所示: