Tengo este menu para ir pidiendo por teclado los datos al usuario, el menu avanza de forma automatica, luego en el ultimo casele pregunta al usuario si es que quiere ingresar un nuevo objeto o no, en cada caso a i le asigna un valor, cuando indicaba Y le asigna 0 para que al terminar sumara 1 mas y entrara nuevamente al case 1 y pregutara nuevamente los datos, el tema es que nunca entraba al case 1 empezaba desde el case 2, trate colocandole hasa un -1 al i aun asi siempre empezaba desde el case 2, bueno modificando esto ahora entro en un loop infinito, y no sale de la pregunta
Código
, si alguno me pudiera ayudar se los agradeceria mucho saludos
PD. tengo uno que otro system basura cuando estaba tratando de trazar donde estab el error
Código
package javaproducto; import java.util.*; /** * * @author Crisoof */ public class Main { Producto Lechemala = new Producto(); Producto LecheVacia = new Producto(); Nodo<Producto> Indice = new Nodo(Lechemala); Nodo<Producto> NodoNext = new Nodo(); ListaEnlazada<Producto> sistema = new ListaEnlazada<>(); boolean flag = false ; boolean flag_in ; double precioUni = 0; int stock = 0; int stockCrit = 0; String opcion ; + "informacion que se pedira a continuacion"); for(int i = 1;i <= 7;i++){ switch(i){ case 1: flag = false; while(!flag){ codigo = leer.nextLine(); if(codigo.length() <= 10){ flag = true; }else{ flag = false; } } break; case 2: descrip = leer.nextLine(); break; case 3: flag_in = false; while(!flag_in){ try{ precioUni = leer.nextDouble(); flag_in = true; }catch(InputMismatchException ex){ leer.nextLine(); } } break; case 4: flag_in = false; while(!flag_in){ try{ stock = leer.nextInt(); flag_in = true; }catch(InputMismatchException ex){ leer.nextLine(); } } break; case 5: flag_in = false; while(!flag_in){ try{ stockCrit = leer.nextInt(); flag_in = true; Lechemala.setCodigo(codigo); Lechemala.setDescripcion(descrip); Lechemala.setPrecioUni(precioUni); Lechemala.setStock(stock); Lechemala.setStockCritico(stockCrit); sistema.insertarPrimero(Lechemala); }catch(InputMismatchException e){ leer.nextLine(); } } break; case 6: flag_in = false; while(!flag_in){ try{ opcion = leer.next(); if (opcion.equals("Y") || opcion.equals("y")){ flag_in = true; i = 0 ; }else if (opcion.equals("N") || opcion.equals("n")){ flag_in = true ; i = 8; }else flag_in = false; }catch(InputMismatchException e){ leer.next(); } } break; } } for(int i =sistema.cuantosElementos();0<sistema.cuantosElementos();i--){ } } }