Java 创建一个生成随机数的类
我的任务是从1和10中生成一个随机数,用户猜测该数字,根据过高或过低,将再次猜测。当正确猜测数字时,它将显示猜测它花费了X次。与其让别人为我做这一切,不如给我一个解释,这样我将来就能帮助自己了。我希望我已经展示了下面还需要做什么。谢谢Java 创建一个生成随机数的类,java,if-statement,while-loop,nested-loops,Java,If Statement,While Loop,Nested Loops,我的任务是从1和10中生成一个随机数,用户猜测该数字,根据过高或过低,将再次猜测。当正确猜测数字时,它将显示猜测它花费了X次。与其让别人为我做这一切,不如给我一个解释,这样我将来就能帮助自己了。我希望我已经展示了下面还需要做什么。谢谢 import java.security.SecureRandom; import java.util.Scanner; public class GuessTheNumber { private SecureRandom randomNumber =
import java.security.SecureRandom;
import java.util.Scanner;
public class GuessTheNumber {
private SecureRandom randomNumber = new SecureRandom();
private Scanner input = new Scanner(System.in);
private int numberOfGuesses;
public void play() {
int theNumber = 1 + randomNumber.nextInt(10);
numberOfGuesses = 0;
int guess = askForGuess();
//see if their guess is correct, I know a Boolean is needed somewhere here.
//otherwise call askForGuess() again, also If and While statements.
System.out.printf("You guessed correctly in %d times%n", numberOfGuesses);
}
private int askForGuess() {
numberOfGuesses++;
int guess = 0;
//ask for the guess
//make sure the guess is valid
return guess;
}
}
import java.util.Scanner;
public class GuessTheNumberTest {
public static void main(String [] args) {
Scanner scanner = new Scanner(System.in);
GuessTheNumber game = new GuessTheNumber();
int playAgain;
do {
game.play();
System.out.println("Play again? 1-yes, 0-no");
playAgain = scanner.nextInt();
} while(playAgain == 1);
}
}
您应该尝试接受来自用户的输入,直到userinput与随机生成的数字匹配为止。还要不断增加NumberOfGuess的计数。当用户输入与随机数匹配时,返回猜测数并打印它。 您可能正在寻找以下内容:
private int askForGuess(int theNumber) {
int guessed = in.nextInt();
numberOfGuesses = 1;
while(guessed != thetheNumber )
{
guessed = in.nextInt();
numberOfGuesses++;
}
return numberOfGuesses;
}
注意:您可能希望将theNumber变量设置为全局变量,或者将ti传递给askForGuess()函数非常感谢。我试试看。