Ver Mensaje Individual
  #1 (permalink)  
Antiguo 27/04/2016, 16:38
escritorio
 
Fecha de Ingreso: abril-2016
Ubicación: Ciudadano del mundo
Mensajes: 3
Antigüedad: 8 años, 7 meses
Puntos: 0
Pregunta Error al imprimir una busqueda usando vector de objetos (JAVA-NETBEANS 8.0.2)

Estoy tratando de hacer una CRUD de Empleados.

El detalle esta al momento de realizar la búsqueda.
por primera vez lo hace bien y luego me muestra el que estoy buscando y a todos, si busco uno que no existe también muestra a todos; si me salgo y vuelvo al menú Ppal si lo hace bien.
(Soy novato en el tema de la programación, mis disculpas si se ofenden por la pregunta). Gracias de antemano.
adjunto todo el código para mejor aclaración

Código Java:
Ver original
  1. package Metodos;
  2.  
  3. import Clases.ClassEmpleado;
  4. import java.util.Scanner;
  5.  
  6. public class TodoMetodo {
  7.  
  8.     int pos = 0; //para llevar las posiciones del vector
  9.     int continuar = 1;
  10.  
  11.     static ClassEmpleado[] persona = new ClassEmpleado[10];//vector de la clase empleado        
  12.  
  13.     public void menu() {
  14.  
  15.         Scanner entrada = new Scanner(System.in);
  16.  
  17.         int op;
  18.         do {
  19.             System.out.println("Escoja una opcion: \n "
  20.                     + " 1. Registrar\n"
  21.                     + "  2. Mostrar\n"
  22.                     + "  3. Buscar\n"
  23.                     + "  4. Eliminar\n"
  24.                     + "  5. Salir\n");
  25.  
  26.             op = entrada.nextInt();
  27.  
  28.             switch (op) {
  29.                 case 1:
  30.                     registrar();
  31.                     break;
  32.  
  33.                 case 2:
  34.                     mostrar();
  35.                     break;
  36.  
  37.                 case 3:
  38.                     buscar();
  39.                     break;
  40.  
  41.                 case 5:
  42.                     System.out.println("Cerrando App...");
  43.                     break;
  44.             }
  45.  
  46.         } while (op != 5);
  47.  
  48.     }
  49.  
  50.     public void registrar() {
  51.  
  52.         String nombre1, nombre2, apellido1, apellido2, telefono, direccion;
  53.         String seguir = "s";
  54.  
  55.         Scanner entrada = new Scanner(System.in);
  56.  
  57.         while (seguir.equals("s")) {
  58.             System.out.println("Ingrese el Primer Nombre: ");
  59.             nombre1 = entrada.nextLine();
  60.  
  61.             System.out.println("Ingrese el Segundo Nombre: ");
  62.             nombre2 = entrada.nextLine();
  63.  
  64.             System.out.println("Ingrese el Primer Apellido: ");
  65.             apellido1 = entrada.nextLine();
  66.  
  67.             System.out.println("Ingrese el Segundo Apellido: ");
  68.             apellido2 = entrada.nextLine();
  69.  
  70.             System.out.println("Ingrese numero de Telefono: ");
  71.             telefono = entrada.nextLine();
  72.  
  73.             System.out.println("Ingrese Direccion: ");
  74.             direccion = entrada.nextLine();
  75.  
  76.             persona[pos] = new ClassEmpleado();
  77.  
  78.             persona[pos].setNombre1(nombre1);
  79.             persona[pos].setNombre2(nombre2);
  80.             persona[pos].setApellido1(apellido1);
  81.             persona[pos].setApellido2(apellido2);
  82.             persona[pos].setTelefono(telefono);
  83.             persona[pos].setDireccion(direccion);
  84.  
  85.             Scanner cont = new Scanner(System.in);
  86.             System.out.println("Deseas Continuar s/n []: \n");
  87.             seguir = cont.nextLine();
  88.             pos++;
  89.         }
  90.  
  91.     }
  92.  
  93.     public void mostrar() {
  94.  
  95.         for (int i = 0; i < pos; i++) {
  96.  
  97.             System.out.println("*****DATOS DE LOS EMPLEADOS****\n\n" + "Primer   Nombre:" + persona[i].getNombre1() + "\n"
  98.                     + "Segundo   Nombre:     " + persona[i].getNombre1() + "\n"
  99.                     + "Primer   Apellido:    " + persona[i].getNombre2() + "\n"
  100.                     + "Segundo   Apellido:   " + persona[i].getApellido1() + "\n"
  101.                     + "Telefono:             " + persona[i].getTelefono() + "\n"
  102.                     + "Direccion:            " + persona[i].getDireccion() + "\n"
  103.             );
  104.         }
  105.  
  106.     }
  107.     int posi_cons = 0; //para saber en que posición lo encontro
  108.  
  109.     public void buscar() {
  110.         String cod = "", encontro = "n";
  111.         String continua = "s";
  112.         int i = 0;
  113.         int j = 0;
  114.         Scanner entrada = new Scanner(System.in);
  115.  
  116.         while ("s".equals(continua)) {
  117.             System.out.println("Empleado a buscar: ");
  118.             cod = entrada.nextLine();
  119.             posi_cons = 0;
  120.             while (i < pos && "n".equals(encontro)) {
  121.                 if (cod.equals(persona[i].getNombre1())) {
  122.                     encontro = "s";
  123.                     posi_cons = i;
  124.                 } else {
  125.                     i += 1;
  126.                 }
  127.             }
  128.            
  129.             if ("s".equals(encontro)) {
  130.                 j = posi_cons;
  131.                 for ( ; j < pos; j++) {
  132.                     System.out.println("<<<< Empleado Encontrado!!! >>>>" + "\n");
  133.                     System.out.println("Primer   Nombre:        " + persona[j].getNombre1() + "\n"
  134.                             + "Segundo   Nombre:     " + persona[j].getNombre2() + "\n"
  135.                             + "Segundo   Apellido:   " + persona[j].getApellido1() + "\n"
  136.                             + "Telefono:             " + persona[j].getTelefono() + "\n"
  137.                             + "Direccion:            " + persona[j].getDireccion() + "\n"
  138.                            
  139.                     );                    
  140.                 }
  141.             } else {
  142.                 System.out.println(cod + " Este empleado no existe");
  143.             }
  144.             System.out.println("¿Desea Buscar otro Empleado S/n ? \n");
  145.             continua = entrada.nextLine();
  146.         }        
  147.     }
  148.      
  149.   /*
  150.        public int editar(int cod) {
  151.          return cod;
  152.        }
  153.  
  154.        public void eliminar() {
  155.       }
  156.   */
  157. //estos son los otros paquetes
  158. package Principal; //paquete principal
  159.  
  160. import Metodos.TodoMetodo;
  161.  
  162. public class Empleados {
  163.  
  164.     public static void main(String[] args) {
  165.  
  166.         TodoMetodo meto = new TodoMetodo();
  167.  
  168.         meto.menu();
  169.  
  170.     }
  171.  
  172. }
  173.  
  174. //paquete de la clase (Empleado)
  175. package Clases;
  176.  
  177. public class ClassEmpleado {
  178.  
  179.     String nombre1, nombre2, apellido1, apellido2, telefono, direccion;
  180.  
  181.     public ClassEmpleado() {
  182.     }
  183.  
  184.     public String getNombre1() {
  185.         return nombre1;
  186.     }
  187.  
  188.     public void setNombre1(String nombre1) {
  189.         this.nombre1 = nombre1;
  190.     }
  191.  
  192.     public String getNombre2() {
  193.         return nombre2;
  194.     }
  195.  
  196.     public void setNombre2(String nombre2) {
  197.         this.nombre2 = nombre2;
  198.     }
  199.  
  200.     public String getApellido1() {
  201.         return apellido1;
  202.     }
  203.  
  204.     public void setApellido1(String apellido1) {
  205.         this.apellido1 = apellido1;
  206.     }
  207.  
  208.     public String getApellido2() {
  209.         return apellido2;
  210.     }
  211.  
  212.     public void setApellido2(String apellido2) {
  213.         this.apellido2 = apellido2;
  214.     }
  215.  
  216.     public String getTelefono() {
  217.         return telefono;
  218.     }
  219.  
  220.     public void setTelefono(String telefono) {
  221.         this.telefono = telefono;
  222.     }
  223.  
  224.     public String getDireccion() {
  225.         return direccion;
  226.     }
  227.  
  228.     public void setDireccion(String direccion) {
  229.         this.direccion = direccion;
  230.     }
  231.  
  232. }
  233.  
  234.  
  235. }

Última edición por escritorio; 27/04/2016 a las 16:52