1
resposta

Gostei do desafio de ordenar inversamente! Mas possível tornar o código menos verboso ao usar o metodo reverse()?

public class ConsumerStrings {

    public static void main(String[] args) {


        List<String> palavras = new ArrayList<>();
        palavras.add("Aulas Online");
        palavras.add("Curso Alura");
        palavras.add("Estudando Java");


        palavras.sort(Comparator.comparing(s -> s.length()));
        System.out.println(palavras);
        saida: [Curso Alura, Aulas Online, Estudando Java]



        Comparator <String> comparador =  Comparator.comparing(s -> s.length());
        palavras.sort(comparador.reversed());
        System.out.println(palavras);

        saida: [Estudando Java, Aulas Online, Curso Alura]












    }

}



1 resposta

Tente o seguinte

public static void main(String[] args) {
List<Integer> numeros = new ArrayList<>();
        numeros = Stream.iterate(1, i -> i <= 200, i -> i + 1).toList();

List<Integer> aux;

//Antes
numeros.stream().forEach(i -> System.out.print(i+ " "));

        aux = numeros.stream().sorted(Comparator.reverseOrder())
                        .collect(Collectors.toList());
//Depois                        
aux.stream().forEach(i -> System.out.println(i));
}