• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Wyjście ze switcha, czyszczenie konsoli Java

Object Storage Arubacloud
0 głosów
1,334 wizyt
pytanie zadane 3 czerwca 2016 w Java przez martix3 Użytkownik (690 p.)

Witam!

Mam do was pytanie, bo szukałam już na różnych stronach i nie mogę nic konkretnego znaleźć. Chodzi mi o 3 rzeczy w języku java:

1. Jak menu ze switcha na stałe przypiąć u góry, tzn., żeby nie wyświetlało się za każdym razem i jak na bieżąco czyścić konsolę?

2. Jak wyjść z jego menu do poprzedniego(z jednego switcha do drugiego)?

3. Jaką dać komendę, żeby zakończyć program(return 0 nie działa)

Poniżej wrzucam skróconą wersję mojego menu:

public static void main(String[] args) {

        while (true) {
            System.out.println("**************************************");
            System.out.println("Wybierz numer zadania:");
            System.out.println("0-Dodaj listę drużyn z pliku");
            System.out.println("1-Dodaj pojedynczą drużynę");
            System.out.println("2-Usuń drużynę");
            System.out.println("3-Pokaz listę drużyn");
            System.out.println("4-Utwórz turniej/mecze ");
            System.out.println("5-Wyjdź");

            System.out.println("**************************************");
            Scanner input = new Scanner(System.in);
            int x;
            x = input.nextInt();

            switch (x) {
                case 0:
                    break;
                case 1:
                    break;
                case 2:
                    break;
                case 3:
                    break;

                case 4: {
                    while (true) {
                        System.out.println("**************************************");
                        System.out.println("1-Utwórz turniej siatkówki");
                        System.out.println("2-Utwórz turniej dwóch ogni");
                        System.out.println("3-Wróć do poprzedniego menu");
                        System.out.println("**************************************");
                        x = input.nextInt();
                        switch (x) {
                            case 1:
                                break;

                            case 2:
                                break;

                            case 3://cofnięcie się do poprzedniego menu
                                break;

                            default:
                                System.out.println("Podaj poprawny numer zadania");
                                break;

                        }

                    }

                }
                case 5:
                    break; //wyjście z programu
                default:
                    System.out.println("Podaj poprawny numer zadania");
                    break;
            }

        }

    }

 

1 odpowiedź

0 głosów
odpowiedź 3 czerwca 2016 przez ShiroUmizake Nałogowiec (46,300 p.)

Zapodam Ci moją klasę do czyszczenia :).

package bankonet.windowsPackage;
import java.io.IOException;

public class WindowsApps {




public final static void clearConsole()
{
    try
    {
        final String os = System.getProperty("os.name");

        if (os.contains("Windows"))
        {
            Runtime.getRuntime().exec("cls");
        }
        else
        {
            Runtime.getRuntime().exec("clear");
        }
    }
    catch (final Exception e)
    {
        //  Handle any exceptions.
    }
}
}
// Uruchomienie obiektu o tej klasie:

WindowsApps appsFunc = new WindowsApps();
        WindowsApps.clearConsole();

Chyba nie muszę mówić jak importować :).

Jak zatrzymać menu jest już trudniejsze. Musisz zajrzeć jaka klasa odpowiada za ustawienie kursora. I jak wypisze, kursor ustawić za X linią, za Y kolumną i nie może wrócić do punktu O (Jeżeli JAVA obsługuje podobnie konsole).

2. Po przez wywołanie jeszcze raz tej samej funkcji? Na przykład:

private  static InitMenu () // Raczej żadna klasa nie będzie potrzebowała tej metody do wywołania
{ 
System.out.println("**************************************");
            System.out.println("Wybierz numer zadania:");
            System.out.println("0-Dodaj listę drużyn z pliku");
            System.out.println("1-Dodaj pojedynczą drużynę");
            System.out.println("2-Usuń drużynę");
            System.out.println("3-Pokaz listę drużyn");
            System.out.println("4-Utwórz turniej/mecze ");
            System.out.println("5-Wyjdź");
 
            System.out.println("**************************************");
            Scanner input = new Scanner(System.in);
}

Następnie zmieniamy wywołanie w main

 case 4: {
                    while (true) {
                        System.out.println("**************************************");
                        System.out.println("1-Utwórz turniej siatkówki");
                        System.out.println("2-Utwórz turniej dwóch ogni");
                        System.out.println("3-Wróć do poprzedniego menu");
                        System.out.println("**************************************");
                        x = input.nextInt();
                        switch (x) {
                            case 1:
                                break;
 
                            case 2:
                                break;
 
                            case 3://cofnięcie się do poprzedniego menu
                               WindowsApps.clearConsole(); // Wyczyścmy konsolę (powiedzmy, że gdzie utworzyłeś podany obiekt
                               initMenu(); // Powinno wywołać, jak nie to obiekt i po przez metody obiektu.
                                break;
 
                            default:
                                System.out.println("Podaj poprawny numer zadania");
                                break;

5. w case 5: return false, wyjdzie z while,

Podobne pytania

0 głosów
1 odpowiedź 7,980 wizyt
pytanie zadane 15 października 2015 w Java przez Hinaru Początkujący (310 p.)
0 głosów
1 odpowiedź 754 wizyt
pytanie zadane 25 kwietnia 2015 w Java przez damianeqe Gaduła (4,380 p.)
+2 głosów
1 odpowiedź 64 wizyt
pytanie zadane 10 kwietnia w C# przez roger10 Nowicjusz (180 p.)

92,568 zapytań

141,422 odpowiedzi

319,639 komentarzy

61,957 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...