1
resposta

Collections não ordena

Pessoal, o meu método .sort, não está ordenando... alguém poderia me dizer o motivo? Obrigado

package br.com.alura;

import java.util.ArrayList;
import java.util.Collections;

public class TestandoListas {

    public static void main(String[] args) {
        String aula1 = "Conhecendo mais de listas";
        String aula2 = "Modelando a classe aula";
        String aula3 = "Trabalhando com cursos e sets";

        ArrayList<String> aulas = new ArrayList<>();

        aulas.add(aula1);
        aulas.add(aula2);
        aulas.add(aula3);
        aulas.remove(0);

        for (String aula : aulas) {
            System.out.println("aula: " + aula);
        }

        String primeiraAula = aulas.get(1);

        System.out.println("Primeira aula: " + primeiraAula);

        aulas.add("aumentando o nosso conhecimento");

        System.out.println(aulas);
        System.out.println();

        System.out.println("Depois:");
        Collections.sort(aulas);

        System.out.println(aulas);

    }

}
1 resposta

Olá, você pode tentar utilizar a classe Collator para comparar Strings. Ou pode tentar utilizar expressão lambda.

System.out.println("Depois:");
        Collections.sort(aulas, Collator.getInstance());


        aulas.sort((x, y) -> x.toUpperCase().compareTo(y.toUpperCase()));

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