Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Leitura lista.sort

Pessoal, ajuda...!

List lista = new ArrayList<>();

ao digitar na IDE do Eclicpe lista.sort e ctrl + espaço, aparece a seguinte sugestão:

sort(Comparator<? super Conta> c): void - List

Fiquei com dúvida na leitura do método... como se lê essa parte "Comparator<? super Conta> c" e o que significa esse ponto de integorração dentro do generics ?

4 respostas

"Comparator<? super Conta> c" nesse caso a ? indica que o parametro que você vai passar para a função sort, precisa ser do tipo Conta ou um tipo que seja pai de Conta, ou seja, uma classe que conta esteja estendendo, ou também uma classe que Conta esteja implementando.

Então a leitura dessa expressão

sort(Comparator<? super Conta> c): void 

Seria sort é o nome da função que recebe como parametro um objeto do tipo conta que implemente um Comparator ou que estenda de uma classe que implemente Comparator, e esse metodo sort é void ou seja não retorna nada.

Espero ter ajudado, caso tenha dito algo equivocado espero também que outras pessoas complementem.

Procurei aqui na internet um post que explica melhor para ajudar: http://www.mauda.com.br/?p=468#:~:text=Dessa%20forma%20%C3%A9%20f%C3%A1cil%20perceber,n%C3%A3o%20existir%C3%A1%20erros%20de%20compila%C3%A7%C3%A3o.

Abraço!

Boa noite Maxwel! Agradeço o retorno!

Fiquei com uma dúvida no seguinte:

"Seria sort é o nome da função que recebe como parametro um objeto do tipo conta que implemente um Comparator ou que estenda de uma classe que implemente Comparator, e esse metodo sort é void ou seja não retorna nada".

man, essa leitura que o tipo Conta precisa implementar Comparator é perceptível já na assinatura do método sort ou precisa acessar o source do Comparator pra identificar que é uma interface e precisa implementar o método abstrato?

Desde já agradeço! : )

solução!

se você apenas digitar lista.sort() você não vai conseguir saber de cara, mas como você disse usando ctrl + espaço, aparece a assinatura do método que no caso foi sort(Comparator<? super Conta> c): void, por ai você consegue saber. Com o tempo só de bater o olho você vai entender, porque de tanto usar essas classes e métodos isso já vai ficando na cabeça, enquanto não ta claro pra você sempre tenta salvar uns links que você achar na internet com explicação, acessar a documentação do método e praticar, com o tempo fica mais tranquilo.

Abraço.

Show Maxwel, agradeço toda a ajuda! Um abraço!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software