Comando switch

2 respostas
J

Olá pessoal, sou iniciante na programação e preciso de ajuda.
Estou desenvolvendo um programa de um projeto da faculdade, é um programa de venda de passagens e no início ele tem um menu e eu usei o comando switch para executar os comandos de acordo com o que o usuário selecionar, e a minha dúvida é quanto ao default, quando o usuário digitar uma opção inválida eu quero que ele volte para o menu principal, mas eu não estou conseguindo fazer isso, do jeito que estou fazendo quando eu digito ele encerra o programa, vou deixar o código aqui pra vocês verem como estou fazendo e se puderem me ajudar fico muito agradecida.

`Scanner entrada = new Scanner(System.in);

//vetores
    int janela[] = new int[24];
    int corredor[] = new int[24];
    
    //declaração das demais variáveis
    int num, i, j, c, opMenu;
    String jc;
    String continua;
    
    //MENU - VENDA DE PASSAGENS
    System.out.println("MENU - VENDAS DE PASSAGENS");
    //1. Vender passagem
    System.out.println("1. Vender Passagem");
    System.out.println("2. Mapa de ocupação");
    System.out.println("3. Encerrar");
    //entrada do usuário escolhendo uma das opções do menu;
    opMenu = entrada.nextInt();`
`//executa a escolha do usuário

switch(opMenu){

case 1: //Vender passagem

//comandos Case1

break;

case 2: //Mapa de ocupação

//comandos Case2

break;//break do case 2

case 3: //Encerrar

System.exit(0);

break;//break do case 3
default: //quando o usuário digitar um número diferente
                 System.out.println("Opção inválida! digite novamente");
                //MENU - VENDA DE PASSAGENS
                System.out.println("MENU - VENDAS DE PASSAGENS");
                //1. Vender passagem
                System.out.println("1. Vender Passagem");
                System.out.println("2. Mapa de ocupação");
                System.out.println("3. Encerrar");
                opMenu = entrada.nextInt();
            
        break; //break do default
    }//FIM DO SWITCH PRINCIPAL QUE EXECUTA A ESCOLHADA DE UMA SESSÃO DO MENU`

2 Respostas

M

Faça um while verificando se o número que ela botou é uma opção aceita, senao volte para o começo do while. Pode declará-lo onde você começa a dar o print no menu

J

obrigada Marcus, consegui fazer do jeito que você falou e deu certo obrigada mesmo

Criado 29 de abril de 2016
Ultima resposta 29 de abr. de 2016
Respostas 2
Participantes 2