Olá Marcelo.
Tudo bem?
Muito obrigado pelo feedback e sugestão. É muito importante para a Alura.
Entendo o seu ponto, no caso, no contexto da aula o ideal seria ordenar pela conta mesmo, e não pelo número da agência, a implementação deveria refletir isso.
Para ajustar o exemplo, você está correto ao sugerir a alteração para this.Conta.CompareTo(outro.Conta); no método CompareTo() da classe ContaCorrente. Isso faria com que a ordenação fosse realizada com base no número da conta, ao invés do número da agência.
Aqui está um exemplo prático de como você poderia modificar o método CompareTo() para ordenar pelo número da conta:
public int CompareTo(ContaCorrente? outro)
{
if (outro == null)
{
return 1;
}
else
{
return this.Conta.CompareTo(outro.Conta);
}
}
Com essa alteração, a lista de contas será ordenada pelo número da conta quando você chamar o método Sort() na sua lista _listaDeContas.
Eu deixei o exemplo, para que outros estudantes possam acessar esse tópico e entender como é feito. Espero ter ajudado. Qualquer dúvida manda aqui. Bons estudos.