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

Metodo Sort não deixou em ordem alfabética

olá, apesar de usar o metodo sort, as strings não ficaram em ordem alfabética. Isso está correto ou deixei de fazer algo? Eu achava que ele olhava letra a letra na comparação, mas parece que só olha o numero de caracteres da String.


List<String> palavras = new ArrayList<>();
        palavras.add("alura online");
        palavras.add("casa do código");
        palavras.add("caelum");



        palavras.sort((s1,s2) -> s1.length()- s2.length());
        palavras.forEach(s -> System.out.println(s)); // declara variavel que sera recebida (s)

A saida no console é a abaixo. caelum alura online casa do código

1 resposta
solução!

O problema está na comparação, para deixar em ordem alfabética vc deveria usar o método compareTo da classe String.

palavras.sort((s1,s2) -> s1.compareTo(s2));