Я долго искал возможность повторить открытый класс на Java, я нашел решение с продолжением и повторением дополнительного цикла while. Но я действительно недоволен этим, есть ли более простой способ сделать это? Спасибо за помощь.Как я могу повторить открытый класс в Java?
import java.util.Random;
import java.util.Scanner;
public class Zufallszahl {
public static void main(String[] args) {
while (1 == 1) {
Random rn = new Random();
Scanner numberScan = new Scanner(System.in);
Scanner restartScan = new Scanner(System.in);
int zahl = rn.nextInt(100 - 1) + 1;
int number = 0;
String restart = "";
int a = 0;
while (number != zahl) {
a++;
System.out.print("Rate eine Zahl zwischen 0 und 100: ");
number = numberScan.nextInt();
if (number == zahl) {
System.out.println("richtig");
System.out.println("Du hast " + a + " Versuche gebraucht!");
System.out.print("Nochmal? j/n: ");
restart = restartScan.nextLine();
}
if (number < zahl) {
System.out.println("zu klein");
}
if (number > zahl) {
System.out.println("zu gross");
}
}
if (restart.equalsIgnoreCase("j")) {
continue;
} else if (restart.equalsIgnoreCase("n")) {
System.out.println("Tschüss!");
return;
}
}
}
}
Вы хотите к ** повторить ** класса? Что ты хочешь делать? Информация: с ** break ** вы можете выйти/выйти из ** текущей петли **, ** return ** выйдет/выйдет из ** всего метода **. Возможно, вы можете просто попробовать заменить ** return ** ** ** ** ** – Ben
Да, я хочу «перезапустить» полный код if (restart.equalsIgnoreCase («j»)) { continue; с помощью thist. Он запускается снова, но мне пришлось сделать дополнительный цикл в классе, включающем бесконечность. Я не думаю, что это хороший способ сделать. –
Вы можете просто повторно вызвать 'main (new String [0])' в конце вашего метода (вместо ** return ** и/или ** continue **) – Ben