Java Wiederholung des Programms

6 Antworten

Vom Beitragsersteller als hilfreich ausgezeichnet
main(args);

D.h. die Methode erneut aufrufen, die das ganze startet.

Einfach alles was wiederholt werden soll, beispielsweise in eine while-Schleife, eine sinnvolle Schleifenbedingung wäre da, so lange das Laben vom Monster > 0 ist beispielsweise. Du kannst aber auch mit Runden arbeiten und dann wenn du den Kampf auf z.b. 3 Runden beschränkst in der while sagen, while(i <= 3) {} dabei solltest du i vorher noch als Integer mit den Wert = 1 definieren und am Ende der Schleife i++; schreiben. Wenn du nach Runden gehst würde ich dir dann for-Schleifen empfehlen, da kannst du dann einfach schreiben: for(int i = 0; i < 3; i++) {...}. Diese Schleifen solltest du kennen. Es gibt noch andere und auch andere Arten solche Arten von Schleifen zu erreichen, beispiel Rekursion, wirst du aber noch nicht brauchen.

Kannst du nicht die Argumente in main weglassen? Dann könntest du einfach main(); aufrufen.

Wenn nicht, würde ich den Rumpf von main in eine neue Funktion packen, z. B. mainneu oder main überladen (ohne Argumente) und dann mainneu();, bzw. main(); aufrufen.

public static void main(String[] args) throws java.io.IOException {

    while (true) {
       System.out.println("Aktion wählen: ");
       System.out.println("1 = Angriff\n2 = Blocken");
       System.out.println("Bitte Zahl eingeben: ");
       java.io.BufferedReader in = new java.io.BufferedReader(new java.io.InputStreamReader(System.in));
       String input = in.readLine();

       if (Integer.parseInt(input) == 1 ) {
           AngriffMensch();
       } else {
           BlockMensch();
       }
   }
}

Statt true kannst du natürlich auch irgendeine andere sinnvolle Bedingung einbauen. So wird das ganze halt ewig wiederholt, bis du das Programm durch irgendeine Eingabe beendest.

Ganz einfach: main(null); -> oder packe diesen Teil in eine Methode und lass ihn sich selbst aufrufen, oder Schleife


Drextor 
Beitragsersteller
 08.10.2014, 19:46

Es sagt dann : "unhandled exceptition IOExceptition

0