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

[Dúvida] Sobre o uso do Colletions.sort()

Na aula tem um comentário qué assim:

"Do jeito que estamos chamando o Collections.sort(), ele aceita apenas listas de objetos que obrigatoriamente saibam se comparar um com o outro. Isso tem muito cara de contrato, de interface. Não à toa, esse nome que apareceu, o "comparable", é uma interface que explica e meio que fala assim: "Todo mundo que implementa Comparable, todo mundo que assina o contrato de comparável precisa saber se comparar entre si."

Fiquei na duvida se essa comparação é pelo tipo de dado que exibe, como String e int que é colcado no construtor para retornar esses dados.

Então entendo que essa classe Colletions.sort() deve sempre comparar mesmos tipos de dados, certo?

1 resposta
solução!

Oiee Matheus, tudo bem? E sim sim, você está correto.

Quando usamos o método Collections.sort(), estamos ordenando uma lista de objetos. Para que essa ordenação seja possível, os objetos na lista precisam ser comparáveis entre si. A interface Comparable é usada para definir um contrato que os objetos devem seguir se desejarem ser comparados com outros objetos do mesmo tipo.

A implementação da interface Comparable em uma classe permite que seus objetos sejam ordenados naturalmente com base em algum critério definido pelo desenvolvedor. Por exemplo, uma classe Pessoa pode implementar a interface Comparable e definir que a ordenação será feita pelo nome, idade ou qualquer outro atributo relevante.

Quando você chama Collections.sort(), o método utiliza a lógica de comparação definida pela implementação do método compareTo() da interface Comparable. Isso significa que os objetos na lista são comparados usando a lógica definida dentro desse método.

Boa sorte com teu curso!