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

Como funciona por debaixo dos panos o Sort com a interface Comparer

Estava tentando entender como seria o código para executar a função Sort que implementa a interface Comparer, seria basicamente o mesmo Sort? Porém ao invés de usar o compareTo da classe (ContaCorrete, por exemplo) em questão ele passa os objetos comparados para criar uma instância da classe especialista (ComparadorContaCorrentePorAgencia) e daí efetuar a comparação?

1 resposta
solução!

Olá Davi!

Dei uma olhada na documentação sobre o método Sort() e o construtor que recebe apenas um array como argumento de entrada pode ser organizado de 3 formas diferentes dependendo das circunstâncias: Insertion Sort, Heapsort e Quicksort. O método usado depende basicamente da quantidade de dados existentes no array.

Nessa aula ele fez a própria implementação de Icomparer, que basicamente faz a comparação entre 2 objetos e retorna um valor para saber se o primeiro é maior, igual ou menor em relação ao segundo. A partir dessa informação dá para ordenar o array jogando o elemento para antes ou depois da posição original dele.

Esse é um assunto bem extenso. Sugiro que faça os dois cursos de coleções com c#: parte 1 e parte 2.

Espero ter ajudado! Bons estudos!