Foro de elhacker.net

Programación => Java => Mensaje iniciado por: netca en 16 Abril 2012, 22:01 pm



Título: Ayuda con lista enlazada
Publicado por: netca en 16 Abril 2012, 22:01 pm
Estoy intentando agregar un elemento X en una posicion X y me tira este error:

Citar
Exception in thread "main" java.lang.NullPointerException
   at ListaDeEnterosEnlazada.agregar(ListaDeEnterosEnlazada.java:118)

Aqui el metodo :
Código:
@Override
public boolean agregar(Integer elem, int pos) {
NodoEntero anterior = inicio;
NodoEntero aux = inicio;
NodoEntero n = new NodoEntero();

n.setDato(elem);
n.setSiguiente(null);

int i = 0 ;

if( ( aux==null) || (pos == 0 )){
inicio= n ;
aux = n ;
this.tamanio++;
return true;
} else

while (( i != pos) || (aux.getSiguiente() != null)){    //Aca esta el error
i++;
anterior = aux;
aux = aux.getSiguiente();
}
if (pos == i){
anterior.setSiguiente(n);
n.setSiguiente(aux);
this.tamanio++;
return true;
}else
return false;



}


Título: Re: Ayuda con lista enlazada
Publicado por: sapito169 en 19 Abril 2012, 01:06 am
la clase completa porfavor

si son 1000 lineas y esta desordenado no lo corrijo

ese problema es por que tu varible local aux es igual a null y cuando un objeto vale null no pedes acceder a sus metodos la solucion de este tipo de problemas depende de la programacion de cada caso nadie te corrige errores del tipo null pointerexception por que la solucion es diferente por cada programa y la unica forma es que tengas primer conceptos teoricos preliminares de como inisialisar objetos y luego te pongas a resolverlo(solo es posible con los conocimientos)


Título: Re: Ayuda con lista enlazada
Publicado por: adwind en 20 Abril 2012, 16:11 pm
Puede ser que tengas algún dato no inicializado.