How to add the “play again?” feature for java

后端 未结 3 1338
生来不讨喜
生来不讨喜 2021-01-24 17:01

Im making a guessing game for my class and I need some help for adding a \"play again\" feature at the end of the game when you\'ve guessed the right number:

pub         


        
3条回答
  •  天命终不由人
    2021-01-24 17:44

    Just put another while loop over everything.

    boolean playing = true;
    
    while(playing) {
      while(guess != numtoguesses) { // All code }
    
      System.out.println("Do you wish to play again? Y/N");
      String answer = input.nextLine();
      playing = answer.equalsIgnoreCase("y");
      count = 0;
      guess = -1;
    }
    

    Everything together:

    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);
        Random rand = new Random();
        int numtoguesses = rand.nextInt(1000) + 1;
        int counter = 0;
        int guess = -1;
        boolean playing = true;
    
        while(playing) {
    
          while (guess != numtoguesses) {
            System.out.print ("|" + numtoguesses + "|" + "Guess the right number: ");
            guess = input.nextInt();
            counter = counter + 1;
    
            if (guess == numtoguesses)
                System.out.println ("YOU WIN MOFO!");
            else if (guess < numtoguesses)
                System.out.println ("You're to cold!");
            else if (guess > numtoguesses)
                System.out.println ("You're to hot!");
          }
        }
    
        System.out.println ("It took you " + counter + " guess(es) to get it correct"); 
    
        System.out.println("Do you wish to play again? Y/N");
        String answer = input.nextLine();
        playing = answer.equalsIgnoreCase("y");
        count = 0;
        guess = -1;   
        numtoguesses = rand.nextInt(1000) + 1; 
    } 
    

    You should extract this in a few methods, but I'll leave that up to you.

提交回复
热议问题