Olá a todos, hoje vou ensinar como fazer um menu no console Java.
é normal Do que um aplicativo, damos a você uma série de opções para o usuário para que você possa executar opções diferentes sem uma ordem definida.
vamos explicar passo a passo como você pode fazer um simples menu de opções X.
tudo isso vai fazer isso em um principal, ele pode ser feito em uma função ou onde você quiser.
A primeira coisa que precisamos é uma variável booleana, uma variável numérica (de acordo com como você deseja pedir as opções) e um scanner ou outro elemento para solicitar dados (JoptionPane por exemplo).
import java.util.Scanner;public class JavaApplication219 { public static void main(String args) { Scanner sn = new Scanner(System.in); boolean salir = false; int opcion; //Guardaremos la opcion del usuario } }
Agora vamos fazer você pedir opções até quer (nós vemos isso na próxima etapa), vamos fazer isso com um tempo, você pode fazer com um tempo.
import java.util.Scanner;public class JavaApplication219 { public static void main(String args) { Scanner sn = new Scanner(System.in); boolean salir = false; int opcion; //Guardaremos la opcion del usuario while(!salir){ } } }
Isso fará até Nós não iniciamos = verdade, não sai.
Agora vamos colocar as opções que queremos mostrar Eu recomendo colocar com sistema.Out.println e com este formato “< Número de opção >. < opção > “
Eu costumo colocar uma opção” exit “mais chamada para que você possa deixar o aplicativo.
Também vamos pedir um número que seria a opção que queremos fazer.
Vamos ver como seria com três opções:
import java.util.Scanner;public class JavaApplication219 { public static void main(String args) { Scanner sn = new Scanner(System.in); boolean salir = false; int opcion; //Guardaremos la opcion del usuario while(!salir){ System.out.println("1. Opcion 1"); System.out.println("2. Opcion 2"); System.out.println("3. Opcion 3"); System.out.println("4. Salir"); System.out.println("Escribe una de las opciones"); opcion = sn.nextInt(); } } }
Agora vamos usar um interruptor para fazer a opção para executar a tarefa que precisamos.
Em cada caso, vamos colocar o código que necessidade (funções, pedir algo, etc).
No último caso, nós colocamos fora = true; para indicar que queremos sair (o número do caso pode variar dependendo do número de opções ).
Também colocamos um padrão para evitar que verifique se o número está no intervalo de opções.
import java.util.Scanner;public class JavaApplication219 { public static void main(String args) { Scanner sn = new Scanner(System.in); boolean salir = false; int opcion; //Guardaremos la opcion del usuario while(!salir){ System.out.println("1. Opcion 1"); System.out.println("2. Opcion 2"); System.out.println("3. Opcion 3"); System.out.println("4. Salir"); System.out.println("Escribe una de las opciones"); opcion = sn.nextInt(); switch(opcion){ case 1: System.out.println("Has seleccionado la opcion 1"); break; case 2: System.out.println("Has seleccionado la opcion 2"); break; case 3: System.out.println("Has seleccionado la opcion 3"); break; case 4: salir=true; break; default: System.out.println("Solo números entre 1 y 4"); } } } }
O que acontecer se eu colocar uma string em vez de um número? Nós teríamos um erro.
Então vamos colocar uma exceção especial.
import java.util.InputMismatchException;import java.util.Scanner;public class JavaApplication219 { public static void main(String args) { Scanner sn = new Scanner(System.in); boolean salir = false; int opcion; //Guardaremos la opcion del usuario while (!salir) { System.out.println("1. Opcion 1"); System.out.println("2. Opcion 2"); System.out.println("3. Opcion 3"); System.out.println("4. Salir"); try { System.out.println("Escribe una de las opciones"); opcion = sn.nextInt(); switch (opcion) { case 1: System.out.println("Has seleccionado la opcion 1"); break; case 2: System.out.println("Has seleccionado la opcion 2"); break; case 3: System.out.println("Has seleccionado la opcion 3"); break; case 4: salir = true; break; default: System.out.println("Solo números entre 1 y 4"); } } catch (InputMismatchException e) { System.out.println("Debes insertar un número"); sn.next(); } } }}
A exceção escolhida é inputmismatchException, Essa exceção salta quando você não entra no número não pode ser convertido no nosso caso.
Nós colocamos SN.Next () para evitar que ele digite um loop infinito, somente se você usar o scanner.
No código anterior, nós já teríamos nosso menu completado, copiá-lo e tentar você mesmo.
Eu mostra um exemplo:
Pode ser modificado no seu gosto.
Espero que você seja útil. Se você tem dúvidas, pergunte. Estamos aqui para ajudá-lo.