# Das Gleiche wiederholen



## Kenta1561 (17. Mai 2016)

Hallo,

ich will wissen, wie man das Gleiche in Java wiederholen kann, aber nicht mit einer Schleife etc. sondern dass am Ende eines Programms z.B. gefragt wird ob man das Gleiche nochmal machen will und wenn ja, dass man das nochmal wiederholt und wenn nicht, dann nicht.

Code:

```
package main;

public class Main {

    public static void main(String[] args) {

        System.out.println("Hallo!");

        String input = JOptionPane.showInputDialog("Willst du das Gleiche nochmal wiederholen?");
        if(input.equals("Ja") {
            //NACH OBEN
        } else {
            System.exit(1);
        }

    }

}
```

MfG
Kenta1561


----------



## Viktim (17. Mai 2016)

Du könntest das ganze in Eine Methode schmeißen und wenn das dann "Ja" ist die Methode einfach sich selbst aufrufen lassen 

```
public class Main {

  public static void main(String[] args) {
    Main mainKlasse = new Main();
    mainKlasse.methode();
  }

  public void methode() {
    System.out.println("Hallo!");

    String input = JOptionPane.showInputDialog("Willst du das Gleiche nochmal wiederholen?");
    if (input.equals("Ja")) {
      methode();
    } else {
      System.exit(1);
    }
  }

}
```

Sonst halt echt mit einer schleife


----------



## Thallius (17. Mai 2016)

Das ist nunmal ein klarer Fall für eine Schleife. Anders macht keinen Sinn


----------



## Kenta1561 (17. Mai 2016)

@Thallius @Viktim
Hallo,

erstmal danke für die Antwort. An eine Schleife habe ich auch erst gedacht, aber muss man nicht bei einer Schleife festlegen, wie oft das Gleiche wiederholt werden soll?

LG
Kenta1561


----------



## Elenteria (17. Mai 2016)

Nein musst du nicht. Du kannst ja z.B. so ein Konstrukt bauen:

```
boolean repeat = true;
while(repeat == true) {
  doSomething();
  repeat = askForRepeat();
}
```

oder als for-Schleife:

```
for(int repeat = 1; repeat == 1; ) {
  doSomething();
  repeat = askForRepeat();
}
```

Hier ist nirgends festgelegt wie oft das ganze wiederholt wird.


----------



## Joose (17. Mai 2016)

Kenta1561 hat gesagt.:


> ... aber muss man nicht bei einer Schleife festlegen, wie oft das Gleiche wiederholt werden soll?



Nein muss man nicht, bzw. es gibt 2 unterschiedliche Arten von Schleifen: for-Schleife und while-Schleife (dazu zähle ich jetzt auch die do/while-Schleife)

EDIT: ok zu spät.
Aber um Elenterias Beitrag noch zu ergänzen:
Grundsätzlich kann jede for-Schleife in while-Schleife ungewandelt werden und umgekehrt.


----------

