Listas Ligadas

4 respostas
H

Boas. Estou a usar uma lista ligada deste exemplo [https://www.caelum.com.br/apostila-java-estrutura-dados/listas-ligadas/#5-10-pegando-um-elemento-da-lista]

Ao fazer o “lista.adiciona(“qualquer_coisa”);”

No Output recebo sempre:
run:
lista.ListaLigada@6d06d69c
BUILD SUCCESSFUL (total time: 0 seconds)

Alguem me ajuda a perceber o que se está a passar?

4 Respostas

S

A impressão não está errada, você está imprimindo o objeto “lista”. Você tem que usar um método que acesse a lista e faça a impressão de cada elemento ou o que quiser fazer com a mesma.

LuanFroehlich

Cola o código desse método aqui pra gente dar uma olhada…

H

Sim eu falei com o professor e ele disse me o que estava a fazer errado.Ele disse me que nao “estamos” em estruturas de dados por isso podia usar o LinkedList por exemplo.Como conhecimento extra vou desenvolver esse codigo para os meus algoritmos.

H

Boas. O codigo não é meu mas é assim:

<a href="//Celula.java" class="onebox" target="_blank">//Celula.java</a>

public class Celula {

private Celula proxima;

private Object elemento;

public Celula(Celula proxima, Object elemento) {

this.proxima = proxima;

this.elemento = elemento;

}
public Celula(Object elemento) {

this.elemento = elemento;

}
public void setProxima(Celula proxima) {

this.proxima = proxima;

}
public Celula getProxima() {

return proxima;

}
public Object getElemento() {

return elemento;

}

}

//ListaLigada.java
public class ListaLigada {

private Celula primeira;

private Celula ultima;

public void adiciona(Object elemento) {}

public void adiciona(int posicao, Object elemento) {}

public Object pega(int posicao) {return null;}

public void remove(int posicao){}

public int tamanho() {return 0;}

public boolean contem(Object o) {return false;}

public void adicionaNoComeco(Object elemento) {}

public void removeDoComeco() {}

public void removeDoFim() {}

}
// Inicio.java

public class TesteAdicionaNoFim {

public static void main(String[] args) {

ListaLigada lista = new ListaLigada();
lista.adiciona("Rafael");
lista.adiciona("Paulo");
   System.out.println(lista);

}
}

Faltou dizer que aprendi esta estrutura em AnsiC mas agora em Object Oriented precisamos saber java, por isso o meu skill de java ainda é muito proximo do zero apesar de ja nao precisar andar com os ponteiros pra frente e para tras e ser ainda acho confuso esta linguagem

Criado 10 de junho de 2018
Ultima resposta 16 de jun. de 2018
Respostas 4
Participantes 3