public void remove(int posicao) { if (!this.posicaoOcupada(posicao)) { throw new IllegalArgumentException("Posição não existe"); } if (posicao == 0) { this.removeDoComeco(); } else if (posicao == this.totalDeElementos - 1) { this.removeDoFim(); } else { Nodo anterior = this.pegaCelula(posicao - 1); Nodo atual = anterior.getProxima(); Nodo proxima = atual.getProxima(); anterior.setProxima(proxima); proxima.setAnterior(anterior); this.totalDeElementos--; } }