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

[Dúvida] .reversed() do Stream()

Olá Bom dia como vai? levando em consideração o código abaixo: filmes.stream() .filter(filme -> filme.getAnoLancamento() == 2022) .filter(filme -> filme.getTotalVisualizacao() >= 10000 && filme.getAvaliacao() >= 9.4) .sorted(Comparator.comparingDouble(Filme::getAvaliacao).reversed()) .limit(10) .forEach(System.out::println); O que faz o .reversed() ?

obrigado Mauricio G

1 resposta
solução!

Olá Maurício, tudo certo?

O método .reversed() é utilizado para inverter a ordem de um comparador. No seu código, você está utilizando Comparator.comparingDouble(Filme::getAvaliacao) para ordenar os filmes com base na avaliação, do menor para o maior. Quando você adiciona .reversed(), essa ordem é invertida, ou seja, os filmes serão ordenados do maior para o menor em termos de avaliação.

No contexto do seu código, isso é importante porque você deseja listar os 10 melhores filmes, o que significa que você quer começar pelos filmes com as avaliações mais altas. Assim, ao usar .reversed(), você garante que os filmes com maior avaliação apareçam primeiro na lista.

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.