Descargá la app
Danos tu opinión
Anuncie en Taringa!
Sobre nosotros
Ayuda
Reglas de la comunidad
Desarrolladores
Denuncias
Reportar Abuso - DMCA
Términos y condiciones
Reportar un bug
  1. Hazlo tu mismo
  2. »
  3. Tutoriales

Menues y sub menues iterativos en consola de Java.


Bien, para aquellos que nos iniciamos en el mundo de Java sabemos que antes de las interfaces gráficas(GUI´s)
debemos desarrollar nuestras aplicaciones limitándonos a la consola de la JVM.

Como bien dice el título del post, hoy veremos como implementar menues y submenues "iterativos" aunq también serán interactivos, jajaj X ).

La palabra iteración indica un proceso cíclico, en nuestro caso lo que deseamos es que el programa se desarrolle en tanto sea el usuario quien decida darle fin.

Para esto en primer lugar vamos a precisar una estructura de repetición, en este caso implementaremas un while.

La sintaxis genérica de while es la siguiente:

while(condición){
...sentencias...
}

Donde nuestra condición será dada x el valor de una variable condicionada mediante operadores lógicos:

Menor que: <

Mayor que: >

Menor o igual que: <=

Mayor o igual que: >=

Igual que: ==

Distinto que: !=

y nuestras condiciones pueden además sumarse o dirimirse de la siguiente manera:

(condición y otra condición): (cond1 && cond2), donde se analiza que sean verdaderas ambas condiciones.

(condición o otra condición): (cond1 || cond2), donde se analizará la veracidad de una o de otra condición.

Ejemplo de mostrar en pantalla números del 1 al 10 con while y condiciones:


int num = 1;
    while(num<=10){
       
        System.out.println(num);
    num++;
    }


Lo que veremos en la consola será:

[code]
Run:
1
2
3
4
5
6
7
8
9
10
BUILD SUCCESSFUL (total time: 16 seconds)


Nuestro menu tendrá en este caso 4 opciones.

Para implementar la selección de las opciones usaremos una estructura de selección de tipo switch, donde la estructura genérica para el switch es:

int opcion = 0;
System.out.println("ingrese una opcion");
opcion = miScanner.nextInt();
switch (opcion){

case 1:
           System.out.println("Has elegido la opción #1");

                                                                               break;

case 2:
           System.out.println("Has elegido la opción #2");
                                                                               break;

default:
          System.out.println("Has elegido una opción nincorrecta");
                                                                               break;
} [/color][/color][/color]


Para implementar submenues dentro de un menu basta con "anidar" un switch dentro de otro.

En este ejemplo tenemos un menú que se repite una y otra vez hasta que el usuario elija en el menú principal la opción 4.

Donde se ve:
[color=#000000][color=#000000][color=#000000]
system.out.println("Texto n")
[/color][/color][/color]


Debería verse:

donde "/n" es solo un salto de linea.
[color=#000000]
import java.util.Scanner;//Importación de la clase Scanner para leer datos del teclado

public class Menues {
  
 public static void main(String[]args) {
    
   Scanner miscanner = new Scanner(System.in); //Creación de objeto propio de Scanner
   
   int op = 0;//variable que maneja los menús
   
     while (op!=4){// Estructura que repite el algoritmo del menú principal
                   //hasta que se la condición sea falsa
         
         //Se muestra el menu principal
       System.out.println(".................n"
                        + ".  1 opcion #1  .n"
                        + ".  2 opcion #2  .n"
                        + ".  3 opcion #3  .n"
                        + ".  4 Salir      .n"
                        + ".................");
  
       op= miscanner.nextInt(); //Se le da a la variable op el valor ingresado desde el teclado    
       
       switch(op){// Estructura de selección del menú principal
case 1://en caso de que op tome el valor 1
    System.out.println("...............n"
                        + ".Seleccionó #1.n"
                        + "...............");
while(op!=3){
       System.out.println("...............n"
                        + ".  1 Sub #1   .n"
                        + ".  2 Sub #2   .n"
                        + ".  3 Volver   .n"
                        + "...............");
       op=miscanner.nextInt(); //Se le da a la variable op el valor ingresado desde el teclado    
       
       //Sub menú dentro de opción #1 en menú principal
       
       switch(op){//abre Sub menú dentro de opción #1 del menu Principal
           case 1:
       System.out.println("...............n"
                        + ".  Sub #1     .n"
                        + "...............");
               break;
           case 2 :
        System.out.println("...............n"
                         + ". Sub #2      .n"
                         + "...............");
               break;
               
               default://En caso de que el usuario ingrese una opción incorrecta
                   System.out.println("...............n"
                                        + ".#"+op+" Invalido  .n"
                                        + "...............");
               break;
               
       }//cierra Sub menu
}
    break;
    case 2:System.out.println("...............n"
                            + ".Seleccionó #2.n"
                            + "...............");
    break;
        case 3:System.out.println("...............n"
                                + ".Seleccionó #3.n"
                                + "...............");
    break;
        case 4:System.out.println("...............n"
                                + ".   #3 Salir  .n"
                                + "...............");
            break;
        default:System.out.println("...............n"
                                + ".#"+op+" Invalido  .n"
                                + "...............");
       }
   } 
     
   
  } 

}



En el ejemplo anterior si se elige la opcion uno nos encontraremos con tres nuevas opciones, y solo se saldrá del programa si en el menú principal se elige la opcion Salir.

También con default mostramos un error cada vez que el usuario ingresa una opción que no es válida

Otros posts míos: 

Calculadora en java con intergfaz gráfica

Timbre para sordos (luz temporizada) y Luz parpadeante 555

Alarma Fotosensible casera con NE555 (facil)


Amplificador prtátil casero, buen sonido con 9V

Preamplificador casero para micrófono electret o guitarra                          

Y husmea entre mis posts que de seguro alguno te va a interesar:

Taringa.net/@diazespina/posts
 
                                                   
 




Como siempre:


Dudas, criticas, comentarios y/o puntos Bienvenidos!!! 




0
0
0
0No hay comentarios