Olá! Tudo bem? Utilizei meus conhecimentos prévios sobre "Object Oriented Programming", na realização do jogo de adivinhação, tendo como o objetivo de permitir o usuário a poder jogar novamente. Eu criei uma classe para os meus métodos chamada de "Methods" como está descrito abaixo:
package controlling_the_application_flow.activity.NumberOne;
import java.util.Random;
import java.util.Scanner;
public class Methods {
int ramdomNumber;
Scanner scanner = new Scanner(System.in);
int numberOfAttempts = 5;
int numberGuess = 0;
boolean playingAgain = false;
public void guessTheNumber() {
ramdomNumber = new Random().nextInt(100);
if (numberGuess == -1){
System.out.println("Thank you for playing again!");
playingAgain = true;
numberGuess = 0;
}
if (!playingAgain){
System.out.println("Welcome to the number guessing program!");
playingAgain = false;
}
while (numberGuess != ramdomNumber) {
System.out.println("\nYou Only have " + numberOfAttempts + " attempts left.");
System.out.println("\nPlease enter a number between 1 and 100: ");
numberGuess = scanner.nextInt();
numberOfAttempts--;
if (numberGuess == ramdomNumber) {
System.out.println("\nCongratulations! You have guessed the number " + numberGuess + ".");
}
if (numberOfAttempts <= 0) {
System.out.println("\nUnfortunately you lost! Try again pressing -1");
numberGuess = scanner.nextInt();
break;
}
}
}
public void tryAgain() {
while (numberGuess <= -1) {
numberOfAttempts = 5;
guessTheNumber();
}
}
}
Após isto instanciei a mesma na classe principal, criando o objeto. Com isso adicionei os dois métodos criados anteriormente como a seguir:
package controlling_the_application_flow.activity.NumberOne;
public class Main {
public static void main(String[] args) {
Methods methods = new Methods();
methods.guessTheNumber();
methods.tryAgain();
}
}