gpt4 book ai didi

java - while循环出错

转载 作者:行者123 更新时间:2023-12-01 23:36:44 25 4
gpt4 key购买 nike

所以,我必须编写一个程序来生成一个随机数,然后要求用户输入一个数字。如果用户输入了错误的号码,他/她将不得不重试。这是我的代码。

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) 

因为这会产生一个新变量,这是我不想要的。我只是想改变现有的。

最佳答案

您必须将这两行放入循环中:

String input = JOptionPane.showInputDialog("What is your first guess?");
int number = Integer.parseInt(input);

否则,您将无限次比较第一个猜测与随机数,而不要求用户输入第二个数字。

关于java - while循环出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18550545/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com