import javax.swing.JOptionPane; class nodo1 { int dato; nodo1 enlace; public nodo1(int a) { dato = a; enlace = null; } } class lista { public nodo1 inicio; public lista() { inicio = null; } public lista insertarcabeza(int a) { nodo1 nuevo = new nodo1(a); nuevo.enlace = inicio; inicio = nuevo; return this; } public void visualizar() { nodo1 actual; actual = inicio; while (actual != null) { System.out.print(" " + actual.dato + " "); actual = actual.enlace; } } public void add(nodo1 newNodo){ //puntero temporal para recorreme en la lista nodo1 tmp = inicio; //si la lista esta vacia if(tmp==null){ //lo agregamos al root inicio = newNodo; }else{ //de lo contrario nos recorremos hasta el ultimo while(tmp.enlace!=null) tmp = tmp.enlace; //en el ultimo hacemos el enlace tmp.enlace = newNodo; } } public lista insertar(int dat, nodo1 j) { nodo1 nuevo = new nodo1(dat); nuevo.enlace = j.enlace; j.enlace = nuevo; return this; } public nodo1 buscar(int dat) { nodo1 j; try { for (j = inicio; j != null; j = j.enlace) { if (dat == j.dato) { return j; } else { JOptionPane.showMessageDialog(null, "el dato buscado no esta en la lista"); } } } catch (Exception e) { } return null; } } public class ejemplolista { public static void main(String[] args) { lista l = new lista(); while (true) { String opcion = JOptionPane.showInputDialog("" + "1. Introducir un dato a la lista \n" + "2. buscar un dato en la lista \n" + "3. Mostrar los datos \n" + "4. Salir \n" ); int opc = Integer.parseInt(opcion); if ((opc >= 5) || (opc == 0)) { JOptionPane.showMessageDialog(null, "el numero ingresado no se encuentra en el rango del menu"); } switch (opc) { case 1: String Dato = JOptionPane.showInputDialog("Igrese nuevo dato en la lista "); int datolista = Integer.parseInt(Dato); l.insertarcabeza(datolista); break; case 2: String Busc = JOptionPane.showInputDialog("que dato desea buscar "); int bus = Integer.parseInt(Busc); nodo1 n = l.buscar(bus); System.out.println(" este es el numero buscado " + n.dato); break; case 3: l.visualizar(); System.out.println(" "); break; case 4: System.exit(0); break; } } } }