Так что я недавно научил себя немного JOptionPane. Я пытаюсь сделать Guessing Game, которая использует JOptionPane. В настоящее время это мой код:Java Guessing Game (особенно JOptionPane)
import javax.swing.JOptionPane;
import java.util.Scanner;
import java.util.Random;
public class GuessingGameJOptionPane {
public static void main(String[] args) {
int guess, numberToGuess, numberOfTries = 0;
String input;
boolean win;
Scanner scan = new Scanner(System.in);
Random rand = new Random();
numberToGuess = rand.nextInt(100);
JOptionPane.showInputDialog(null, null,"Please enter your name.", JOptionPane.QUESTION_MESSAGE);
win = false;
int guess1 = Integer.parseInt(JOptionPane.showInputDialog(null,null,"Guess a number between 1 and 1000", JOptionPane.QUESTION_MESSAGE));
while(win == false){
numberOfTries++;
if(numberToGuess < guess1)
{
JOptionPane.showMessageDialog(null,"The number you guessed was to low. Please try again" ,null , JOptionPane.INFORMATION_MESSAGE);
}
else if(numberToGuess > guess1){
JOptionPane.showMessageDialog(null,"The number you guessed was to high. Please try again" ,null , JOptionPane.INFORMATION_MESSAGE);
}
else{
JOptionPane.showMessageDialog(null, "Congratulations you won. The number was " + numberToGuess + ". It took you " + numberOfTries, null, JOptionPane.INFORMATION_MESSAGE);
win = true;
}
}//Win == False
}//Main Method
} // Класс
После того как я ввести номер он постоянно говорит, что ваш номер является низким или высоким и продолжает создавать новую панель. Любая помощь будет оценена Спасибо.
'в то время как (победу == лжи)' никогда не выйдет, если вы входите в неправильном номере. Вы можете переместить 'int guess1 = ...' внутри цикла while, таким образом, он может отобразить вопрос, затем отобразить информационное сообщение и повторить, пока вы не исправите его. –