Durante a criação desse método, muitas dúvidas sugiram e mesmo pesquisando na internet, não encontrei nenhuma solução simples que me ajudasse efetivamente, alguns amigos me tiraram dúvidas, e até me sugeriram novas rotas para chegar ao resultado. Deu certo, valeu João e Flávio.
Ah! Antes que digam que os meus métodos são simples, lembro a todos que sou estudante e ele é voltado para outros estudantes que buscaram justamente soluções simples na internet e só encontraram complexas. Daqui para frente fica mais dificil postar o código inteiro, disponibilizarei métodos e quando for possível, todos o código.
Este método abaixo permite o Usuário inserir um objeto em qualquer posição da lista encadeada. O códio foi escrito em Java e espero que ajude a outros estudantes durante sua caminhada.
public void inserir(int pos, Objeto novo) {
//obj
Objeto temp = primeiro; //vai receber a lista
Objeto anterior = null;
//obj
Objeto temp = primeiro; //vai receber a lista
Objeto anterior = null;
//var
int posicao = 0;
int tamanho = tamanho();
int posicao = 0;
int tamanho = tamanho();
//Verifica se a lista está vazia
if (temp == null) {
primeiro = novo;
}
if (temp == null) {
primeiro = novo;
}
//caso a lista não esteja vazia
if (pos <= tamanho && pos > -1) { //vai garantir as margens
while (posicao != pos) { //Percorre a lista
anterior = temp; //guarda o anterior
temp = temp.getProx(); //vai atribuir o proximo a temp
posicao++; //incrementa a posição
}
//valido apenas para a primeira posição
if (posicao == 0) { //se for para colocar na primeira posicao
novo.setProx(temp);
primeiro = novo;
System.out.println("\nPOSIÇÃO 0");
} else {
//valido para qualquer outra posição
novo.setProx(temp); //o obj novo aponta para o atual
anterior.setProx(novo); //o obj anterior aponta para novo
System.out.println("\nPOSIÇÃO " + pos);
} //fim do elsE
} else {System.out.println("\nPOSIÇÃO INVÁLIDA!");} //fim do else
} //fim do metodo inserir
Nenhum comentário:
Postar um comentário