所以,我必须制作一个程序来生成一个随机数,然后要求用户输入一个数字。如果用户输入了错误的号码,他/她将不得不重试。这是我的代码。
import java.util.Random;
import javax.swing.JOptionPane;
public class Oblig4 {
public static void main (String[] args){
Random rg = new Random();
int randomNumber = rg.nextInt(100);
JOptionPane.showMessageDialog(null, "The program has generated a number,"
+ " You have to guess what number it is.");
String input = JOptionPane.showInputDialog("What is your first guess?");
int number = Integer.parseInt(input);
while (number != randomNumber ) {
JOptionPane.showMessageDialog(null, "You've guessed wrong");
String answer = JOptionPane.showInputDialog("Try again");
}
{JOptionPane.showMessageDialog(null,"Congratulations, you guessed right!");
}
我的问题是,在用户猜错之后,它只是循环并说我猜错了,即使我第二次输入正确的答案。
假设随机数为 4,如果我输入 3,则表示我错了,并要求我再试一次。如果我现在输入 4,它仍然说我错了。
编辑:发现我的错误。我不得不写
number = Integer.parseInt(answer)
在while循环内。不是
int number = Integer.parseIng(answer)
因为那会产生一个我不想要的新变量。我只想改变现有的。