Java вывод меню. Возвращение к главному меню

Всем добрый день. Я бы хотел спросить как после выполнения определённого момента кода через оператор switch он возвращался в главное меню? Например

public static void main(String[] args) {        
    
        System.out.println("Choise whats you wanna. ");
        System.out.println("If you wanna vektor tap \"1\".");
        System.out.println("If you wanna Snowman tap \"2\".");
        System.out.println("If you wanna stop tap \"0\".");
        int choise = sc.nextInt();
        boolean end = false;
        do {
        switch(choise) {
        case 1:vektor();
            break;      
        case 2: Snowman.main(); //это лежит в отдельном файле  
        break;
        case 0: end = true;
        break;
        default: System.out.println("Inncorect value ");
        }
        }while(!end );
            
    }
И что бы после выполнения кода в case 1 он возвращался обратно в меню для выбора.

Ответы (2 шт):

Автор решения: had0uken

Вывести меню в отдельный метод, и вызывать его в конце нужного case. Выглядит примерно так:

public class Test {
    public static void main(String[] args) {
       menu();
    }
    public static void menu(){
        
        System.out.println("Choise whats you wanna. ");
        System.out.println("If you wanna vektor tap \"1\".");
        System.out.println("If you wanna Snowman tap \"2\".");
        System.out.println("If you wanna stop tap \"0\".");
        int choise = sc.nextInt();
        boolean end = false;
        do {
            switch(choise) {
                case 1:vektor();
                menu();             // <--- Возврат к основному меню
                    break;
                case 2: Snowman.main(); //это лежит в отдельном файле
                    break;
                case 0: end = true;
                    break;
                default: System.out.println("Inncorect value ");
            }
        }while(!end );
    }
}

И дальше, в зависимости от логики вашей программы, выбираете пункты, в которых нужно организовывать выход либо возврат в основное меню

→ Ссылка
Автор решения: Nowhere Man

В данном случае проще будет внести вывод меню в тело цикла. Также рекомендуется использовать более лаконичную стрелочную форму записи switch, официально существующую с Java 14.

public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);          
    boolean end = false;
    do {
        System.out.println("Please select your option: ");
        System.out.println("Tap \"1\" for vektor.");
        System.out.println("Tap \"2\" for Snowman.");
        System.out.println("Tap \"0\" to exit.");
        
        switch (sc.nextInt()) {
            case 1 -> vektor();   
            case 2 -> Snowman.main();
            case 0 -> end = true;
            default -> System.out.println("Incorrect value ");
        }
    } while(!end);
}
→ Ссылка