Olá, Cristhyan.
Tudo bem?
Muito obrigado por compartilhar a sua solução, e parabéns por se dedicar e tentar fazer. Top!
Sobre o desafio: Uma alternativa para otimizar seu método poderia ser encontrar a conta com o maior saldo diretamente, sem necessidade de ordenar todas as contas e depois filtrar. Isso pode ser feito utilizando o método Aggregate
para comparar diretamente os saldos e identificar a maior conta em uma única passagem. Aqui está um exemplo de como você poderia implementar isso:
public void ExibeContaComMaiorSaldo()
{
if (_itens == null || _itens.Length == 0)
{
Console.WriteLine("Não há contas na lista.");
return;
}
ContaCorrente contaComMaiorSaldo = _itens.Aggregate((conta1, conta2) => conta1.Saldo > conta2.Saldo ? conta1 : conta2);
Console.WriteLine($"A conta com maior saldo é {contaComMaiorSaldo.Conta}");
}
Neste código, o método Aggregate
percorre todos os itens da lista _itens
, comparando dois a dois, e sempre passa para a próxima comparação a conta com o maior saldo encontrado até então. No final, contaComMaiorSaldo
será a conta com o maior saldo dentre todas as contas na lista.
É só uma sugestão para tornar seu código mais direto e eficiente! Espero ter ajudado e bons estudos!