Estou tentando executar o método adiciona , mais não estou conseguindo solucionar corretamente pois insiro um novo elemento no array em uma determinada posição, mas o item é inserido , mas não apaga a posição que ele se encontrava, ou seja ficam duplicados
public void adiciona(int posicao, Aluno aluno) {
this.garanteEspaco();
if (!posicaoValida(posicao)) {
throw new IllegalArgumentException("Posicao Inválida");
}
for(int i = this.totalDeAlunos - 1; i >= posicao; i--) {
this.alunos[i+1] = this.alunos[i];
}
this.alunos[posicao] = aluno;
this.totalDeAlunos++;
}
Jonatas está duplicando
aparece dessa forma [Priscila, João, Jonatas, Pedro, Jonatas, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null]
Seria possível me ajudar, pois não estou entendendo como posso remover o elemento depois de inclui-lo e remover a repetição.