Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Achei insatisfatório o exemplo da ordenação

No vídeo o professor fala a todo momento para orderar a conta e ele vai e desenvolve para ordernar o Número da Agência, sendo que o certo seria ordernar o Número da Conta que é uma String. Tudo bem, a alteração é simples, ao comparar seria só modificar para "this.Conta.CompareTo(outro.Conta);". Mas não segue o que os outros exemplos estão fazendo que é trabalhar com conta e não com Agência.

1 resposta
solução!

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.