Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Dúvida] Erro no construtor , lista duplamente ligadas

Olá , seguindo o artigo Estrutura de Dados: computação na prática com Java da Akemi Alice (https://www.alura.com.br/artigos/estrutura-dados-computacao-na-pratica-com-java) na plataforma quanto chega parte de lista duplamente ligada ao fazer um construtor da erro, seria por atualização no java? O artigo é de 2023 baseado em um de 2014 .... No caso pede para fazer um cascateamento, sugestão da IDE, mas ao rodar da erro....No artigo não a necessidade de cascateamento nenhum

no artigo esse construtor ta apenas assim: ** public Celula(Object elemento) { this(null, elemento); }**

mas se escrevo desse jeito no programa fique embaixo de elemento ,entre chaves, linha ondulada vermelha, alguém puder ajudar ai agradeço

2 respostas
solução!

Olá, Rafael! Tudo bem?

No seu código, o construtor que recebe apenas um Object elemento deveria chamar o outro construtor que recebe dois parâmetros: Object elemento e Celula proximo.

No artigo, o construtor está assim:

public Celula(Object elemento) {
    this(null, elemento);
}

A chamada this(null, elemento); está correta, assumindo que o construtor com dois parâmetros está definido como:

public Celula(Celula proximo, Object elemento) {
    this.elemento = elemento;
    this.proximo = proximo;
}

No seu código, a ordem dos parâmetros no construtor de dois parâmetros parece ser diferente. Certifique-se de que a ordem dos parâmetros no construtor que você está chamando seja a mesma que você está passando. No seu caso, deveria ser:

public Celula(Object elemento, Celula proximo) {
    this.elemento = elemento;
    this.proximo = proximo;
}

E o construtor que chama esse, deveria ser:

public Celula(Object elemento) {
    this(elemento, null);
}

Verifique se a ordem dos parâmetros está correta e tente novamente.

Espero que isso resolva o problema!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

O meu construtor dois parametros ta exatamente como copie do artigo - inicio

public Celula(Object elemento, Celula proximo) {
    this.elemento = elemento;
    this.proximo = proximo;
}

E fico como vc colocou na solução do contrutor com parametro unico

public Celula(Object elemento) {
    this(elemento, null);
}

Deu certo aqui para mim, adaptei desse jeito nos outros codigos no artigo, não sei o que aconteceu no decorrer do artigo que podem de dado continuação no exemplo com o parametros invertidos a partir dos exemplos de listas dupalemente ligadas, mas de qqr forma agradeço ai , vlw