Gå til innhold

Avslutte program ved hjelp av while


Anbefalte innlegg

Hei

 

Jeg sitter å pusler litt i java. Jeg har lagd en meny hvor man kan velge mellom ulike "spill" jeg har lagd under øvinger på skolen (tekstspill). Dette gjør man ved å skrive 1,2,3... etc .

 

Når jeg har kommet inn i selve spillet har jeg lagt til en boolean og while som endres til true hvis jeg vil avslutte. Da avsluttes selve spillet. Spilla er bare klasser som importeres. Det jeg ønsker er å skrive "q" uansett hvor jeg er i et spill for å starte hele programmet på nytt, altså gå tilbake til valg menyen.

Jeg har laget en while som omkranser menyen, men jeg har ingen mulighet til å endre om denne skal være true eller false på en enkel måte. Noen som har tips?

 

Lenke til kommentar
Videoannonse
Annonse

fint om du hadde postet kode så det hadde vært lettere, men er vel ikke værre enn å legge til en lytter og en boolean som settes til false når 'q' tasten trykkes? Igjen, legg ved kode(pastebin.com er fin å bruke) så blir det enklere å hjelpe. :)

Lenke til kommentar

Her er et forslag:

class GameManager {

  private static void printHelp() {
    System.out.println(
            "\n[1] Adventure game" +
            "\n[2] Solitaire" +
            "\n" +
            "\n[h] Print this information" +
            "\n[q] Quit program" +
            "\n");
  }

  public static void main(String[] args) {
    java.util.Scanner in = new java.util.Scanner(System.in);
    printHelp();
    while (true) {
      System.out.print("Enter command: ");
      String command = in.nextLine().trim();
      if (command.equals("q")) break;
      else if (command.equals("h")) printHelp();
      else {
        int cmd = -1;
        try {
          cmd = Integer.parseInt(command);
        } catch (NumberFormatException e) {
        }
        switch (cmd) {
        case 1: Adventure.main(new String[0]); break;
        case 2: Cardgame.main(new String[0]); break;
        }
      }
    }
  }

}
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...