protected DatosPersonales Ficha;
protected Nodo Sig;
los datos personales son otra clase dentro del paquete donde almaceno el nombre DNI etc.
La cuestión es que los datos primeros se han de almacenar en una pila para luego grabarla en un fichero .dat
A la hora de realizar la inserción debe de buscar la posición dentro de la agenda en la que le corresponde, el código que tengo es el siguiente:
Código:
el código compila bien, el problema es que al tratar de ejecutar me da error de puntero en la linea que os he puesto en negrita y como soy novato no entiendo porque esta dando error porque según mi lógica con corredor.Ficha.DNI estoy accediendo al DNI que esta en la posición en la que se encuentra corredor ¿no?.public void insertar(DatosPersonales d){ Nodo aux,corredor; aux=new Nodo(d); corredor=primero; if (primero==null){ aux.Sig=primero; primero=aux; System.out.println("Dato insertado conrrectamente"); }else{ while(corredor!=null){ if (Integer.getInteger(d.DNI)>Integer.getInteger(corredor.Ficha.DNI)){ corredor=corredor.Sig; }else{ // aux = new Nodo(d); aux.Sig=primero; primero=aux; System.out.println("Dato insertado conrrectamente"); } corredor=corredor.Sig; } } }
A ver si alguien me puede ayudar
Muchas gracias a todos