Como ordeno os alunos pelo nome?

Assumindo que você utilize um array de strings, o código ficaria assim:

import java.util.Arrays;

public class principal{
    public static void main(String[] args) {
        String [] alunosArray = {"Joao", "Ana", "Maria", "Pedro", "Bruno"};
        ordenar(alunosArray);
    }

    public static void ordenar(String[] nomes)
    {
        Arrays.sort(nomes);
        System.out.println(Arrays.toString(nomes));
    }
}

Me explica como funciona esse método ordenar

Arrays.sort(); //faz a ordernação em ordem ascendente.

mas não tem que implementar a interface ComparableTo?

No exemplo foi criado um array de String, e String já implementa Comparable, então o sort vai funcionar normalmente.

Mas é um array do tipo Aluno , como ele vai ordenar?

Cara, desculpa a ignorancia… mas suponho que isso seja coisa de curso/facul, o professor nao ensina pra vcs? ou vc ta com dúvida?

até pq vc nem postou nada que vc só, só postou o exercicio

O professor não ensinou e mandou esses exercícios. Tipo de professor complicado , sabe né.

Meu código , só não sei como implementar o método ordenar:
public class Disciplina {

private ArrayList<Aluno> AlunosMatriculados = new ArrayList<>();


public Disciplina() {
}

public Disciplina(ArrayList<Aluno> AlunosMatriculados) {
    this.AlunosMatriculados = AlunosMatriculados;
    
}


public ArrayList<Aluno> getAlunosMatriculados() {
    return AlunosMatriculados;
}

public void setAlunosMatriculados(ArrayList<Aluno> AlunosMatriculados) {
    this.AlunosMatriculados = AlunosMatriculados;
}


public void Inserir(Aluno aluno){
    AlunosMatriculados.add(aluno);
}
public void Remover (Aluno aluno){
    AlunosMatriculados.remove(aluno);
}

public void Mostrar(){
    for(Aluno a:AlunosMatriculados ){
        System.out.println("Nome: "+a.getNome()+"\n Nota: "+a.getNota());
    }
}



public void Ordena(){
    
}

}

Nesse caso a classe Aluno deve implementar Comparable.

Dá uma procurada aqui no fórum que já deve ter vários exemplos disso.