A linguagem Java possui a poderosíssima API Collections, que nos ajuda a trabalhar com listas, e entre outras funcionalidades bastante interessantes, nos permite ordená-las.
Ordenando uma lista Simples
Começaremos com um exemplo básico: Uma lista de nomes, cujos valores são adicionados aleatoriamente;
/** * Lista de String's contendo nomes */ List<String>A saída obtida ao executarmos este código, é a seguinte:listaNomes = new ArrayList<String> (); listaNomes.add("Joaquim"); listaNomes.add("Pedro"); listaNomes.add("Ana"); listaNomes.add("Bianca"); listaNomes.add("Maria"); listaNomes.add("João"); /** * FOR avançado: para cada String dentro de 'listaNomes' associamos a * variável 'nome' e a exibimos na tela * * Exibe lista na ordem de adição */ for (String nome : listaNomes) { System.out.println(nome); }
Joaquim Pedro Ana Bianca Maria JoãoUsando o metodo estático sort() de java.util.Collections podemos facilmente ordenar esta lista de nomes. O código abaixo é exatamente igual ao anterior, porem adicionamos a chamada Collections.sort(listaNomes) :
/** * Lista de String's contendo nomes */ List<String>listaNomes = new ArrayList <String>();
listaNomes.add("Joaquim"); listaNomes.add("Pedro"); listaNomes.add("Ana"); listaNomes.add("Bianca"); listaNomes.add("Maria"); listaNomes.add("João"); /** * Chamada ao metodo sort() * Ordena a lista em ordem alfabética; */ Collections.sort(listaNomes); for (String nome : listaNomes) { System.out.println(nome); }
Ordenando um Vetor (Array)
Em JAVA, os vetores (arrays) também podem ser ordenados de forma bem semelhante:
String[] arrayNomes = new String[]{"Joaquim", "Pedro", "Ana", "Bianca", "Maria", "João"}; /** * Exibe a lista de nomes * na ordem que está colocada no vetor */ for (int i = 0; i < arrayNomes.length; i++) { System.out.println(arrayNomes[i]); } System.out.println("\n"); /** * Ordena os nomes do vetor */ Arrays.sort(arrayNomes); /** * Exibe a lista de nomes * já ordenada */ for (int i = 0; i < arrayNomes.length; i++) { System.out.println(arrayNomes[i]); }
Nenhum comentário:
Postar um comentário