Ajuda, por favor! Inserindo informações em Lista Circular

2 respostas
programaçãojava
B

Estou fazendo um método de inserção de informações em uma Lista Circular, um insiraNoFinal mais especificamente. Nesse método, caso a Lista Circular esteja vazia, então o elemento que estou inserindo é o primeiro, e como ela é circular, o primeiro elemento aponta para ele mesmo, faço isso da seguinte forma:

if (this.primeiro==null)
        this.primeiro = new No (informacao, this.primeiro);

Passo informacao, this.primeiro como parâmetro para que o ponteiro do primeiro aponte para ele mesmo, porém, depois de inserida a primeira informação, quando vou inserir no final outra informação, recebo o erro java.lang.NullPointerException, debuguei o programa e vi que o ponteiro de this.primeiro está como null, como posso resolver isso?

Grato.

2 Respostas

pmlm

Provavelmente o que tu queres é passar this como parâmetro e não this.primeiro.

peczenyj

vamos la

a sua classe nó talvez não deva receber outra coisa no construtor que não seja a informação.

se vc precisa dizer que é o proximo Nó é o objeto x ( e talvez seja ele mesmo, numa lista circular com apenas um elemento ) faça isso em um segundo momento, via um setter ou mesmo acessando o atributo diretamente

algo como

if( condição ) {
   primeiro = new No ( informação );
   primeiro.proximo = primeiro;
}
Criado 12 de setembro de 2016
Ultima resposta 12 de set. de 2016
Respostas 2
Participantes 3