重新提示对话框输入,直到遇到猜数 -java

Re-prompt Dialog input until guessing number is met -java

我一直在尝试提示相同的输入对话框,直到用户猜出正确的数字,但我不确定如何,任何帮助将不胜感激!我很确定是如何实现 while 循环,但我不知道具体如何实现。用户输入是一个字符串,解析为 int 用于计算

JOptionPane.showMessageDialog(null, "\nWelcome to Guess-       My-Number\nA GAME of CHANCE and SKILL\nLet's Play!\n\n");

            // input number
         String myGuess = JOptionPane.showInputDialog("Enter a number between 1 and 25:");
         int myGuess_int = Integer.parseInt(myGuess);

         final int NUMBER_TO_GUESS = 13;



           //good or bad guess??
         while(myGuess_int != NUMBER_TO_GUESS)
         {
            if(myGuess_int < NUMBER_TO_GUESS) //too low
            {
               String message = String.format("Your guess [ %s ] is too low...\nTry Again!\n", myGuess);
               JOptionPane.showMessageDialog(null, message);   
            } 
            else //too high
            {
               String message = String.format("Your guess [ %s ] is too high...\nTry Again!\n", myGuess);
               JOptionPane.showMessageDialog(null, message);             
            }

            JOptionPane.showInputDialog("Enter a number between 1 and 25:");
            myGuess_int = Integer.parseInt(myGuess);    

          }//end while


          String message = String.format("Your guess [ %s ] is the number...\nCongratulations!\n", myGuess);
          JOptionPane.showMessageDialog(null, message);


      } //end main

   } //end class

您可以在条件中使用 do while 循环,

场景如下:

do { 
     // accept prompt from user

     // display error message using if else statement

} while (myGuess_int != NUMBER_TO_GUESS);  // loop again if input not match

尝试使用 do-while loop!

            JOptionPane.showMessageDialog(null, "\nWelcome to Guess-       My-Number\nA GAME of CHANCE and SKILL\nLet's Play!\n\n");

         final int NUMBER_TO_GUESS = 13;

         //good or bad guess??
         String myGuess;
         int myGuess_int;
         do{
            // input number
            myGuess = JOptionPane.showInputDialog("Enter a number between 1 and 25:");
            myGuess_int = Integer.parseInt(myGuess);
            if(myGuess_int < NUMBER_TO_GUESS) //too low
            {
               String message = String.format("Your guess [ %s ] is too low...\nTry Again!\n", myGuess);
               JOptionPane.showMessageDialog(null, message);   
            } 
            else //too high
            {
               String message = String.format("Your guess [ %s ] is too high...\nTry Again!\n", myGuess);
               JOptionPane.showMessageDialog(null, message);             
            }

            JOptionPane.showInputDialog("Enter a number between 1 and 25:");
            myGuess_int = Integer.parseInt(myGuess);    

          }while(myGuess_int != NUMBER_TO_GUESS);//end while


          String message = String.format("Your guess [ %s ] is the number...\nCongratulations!\n", myGuess);
          JOptionPane.showMessageDialog(null, message);


      } //end main

   } //end class