Podemos usar os seguintes métodos para classificar a lista:
campo jtext
- Usando o método stream.sorted()
- Usando o método Comparator.reverseOrder()
- Usando o método Comparator.naturalOrder()
- Usando o método Collections.reverseOrder()
- Usando o método Collections.sort()
Interface de fluxo Java
A interface Java Stream fornece dois métodos para classificar a lista:
método classificado()
A interface Stream fornece um método sorted() para classificar uma lista. É definido na interface Stream que está presente em pacote java.util . Ele retorna um fluxo classificado de acordo com a ordem natural. Se os elementos não forem comparáveis, lança java.lang.ClassCastException. A assinatura do método é:
Stream sorted()
Parâmetro
T: É um tipo de elemento de fluxo.
Java Stream.sorted (comparador comparador)
Também retorna um fluxo classificado de acordo com o comparador fornecido. É estável para um fluxo ordenado. A assinatura do método é:
Stream sorted(Comparator comparator)
Parâmetros
- T é o tipo de elemento de fluxo.
- comparador a ser usado para comparar elementos
Exemplo
No exemplo a seguir, usamos os seguintes métodos:
raposa ou lobo
- Em Java 8, stream() é uma API usada para processar coleções de objetos.
- O método collect() é usado para receber elementos de um fluxo e armazená-los em uma coleção.
- O toList() retorna o coletor que coleta todos os elementos de entrada em uma lista, na ordem de encontro.
Exemplo
import java.util.*; import java.util.stream.*; public class SortListExample1 { public static void main(String[] args) { //returns a list view List slist = Arrays.asList('Tanu', 'Kamal', 'Suman', 'Lucky', 'Bunty', 'Amit'); List sortedList = slist.stream().sorted().collect(Collectors.toList()); sortedList.forEach(System.out::println); } }
Saída:
Método Java Comparator.reverseOrder()
O reverseOrder() é um método de interface Comparator que é definido no pacote java.util. O método retorna um comparador que impõe o inverso da ordem natural. Ele lança NullPointerException ao comparar nulo. A assinatura do método é:
static <t extends comparable> Comparator reverseOrder() </t>
Comparável também é uma interface que pertence a um pacote java.lang.
Parâmetros
T: tipo comparável de elemento a ser comparado.
Exemplo
import java.util.*; import java.util.stream.Collectors; public class SortListExample2 { public static void main(String[] args) { //returns a list view List slist = Arrays.asList('78', 'a', 'm', 'b', 'z', 'c', '12', 'l', '1'); ListsortedList=slist.stream().sorted(Comparator.reverseOrder()).collect(Collectors.toList()); sortedList.forEach(System.out::println); } }
Saída:
Comparador Java.naturalOrder()
O método retorna um comparador que compara objetos Comparáveis na ordem natural. O comparável retornado é serializável. Quando comparamos null, ele lança NullPointerException. É do Java 8. A assinatura do método é:
Static <t extends comparable> Comparator naturalOrder() </t>
- O método classifica os elementos em ordem natural (ordem crescente).
- Coloca null no topo, se houver.
- Ele coloca os elementos das letras maiúsculas primeiro em ordem natural, depois das letras minúsculas na ordem natural, se a lista tiver letras minúsculas e maiúsculas.
Parâmetros
T: Tipo comparável de elemento a ser comparado.
Exemplo
classe de objeto em java
import java.util.*; public class SortListExample3 { public static void main(String[] args) { List country = Arrays.asList('Russia', 'India', 'China', 'Japan', '', 'Ghana'); List country1 = Arrays.asList('Russia','india', 'China', 'Japan', '', 'ghana'); System.out.println(country); //prints the same list as we define country.sort(String.CASE_INSENSITIVE_ORDER); //sorts the list in case insensitive order System.out.println(country1); country.sort(Comparator.naturalOrder()); //sorts list in ascending order System.out.println(country); //sorts list in ascending order (null, capital letter and small letter) country1.sort(Comparator.naturalOrder()); System.out.println(country1); } }
Saída:
Método Java Collections.reverseOrder()
É o método da classe Java Collections que pertence a um pacote java.lang. Retorna um comparador que impõe o reverso da ordem natural. A assinatura do método é:
public static Comparator reverseOrder()
Parâmetros
A classe dos objetos comparados pelo comparador.
java para loop
Exemplo
import java.util.Arrays; import java.util.Collections; import java.util.List; public class SortListExample4 { public static void main(String args[]) { List list = Arrays.asList(10,1,-20,40,5,-23,0); Collections.sort(list, Collections.reverseOrder()); System.out.println(list); } }
Saída:
Método Java Collections.sort()
A classe Collections possui dois métodos para classificar uma lista:
método classificar()
O método sort() ordena a lista em ordem crescente, de acordo com a ordem natural de seus elementos. A assinatura do método é:
public static <t extends comparable> void sort() (List list) </t>
Parâmetros
T: É um parâmetro de tipo.
como obter a data atual em java
list: A lista a ser classificada.
Vamos ver outro exemplo do método Collections.sorts().
Exemplo
import java.util.*; public class SortListExample5 { public static void main(String[] args) { List sList = new ArrayList(); sList.add('m'); sList.add('k'); sList.add('a'); sList.add('p'); sList.add('d'); Collections.sort(sList); //sorts array list for(String str: sList) System.out.print(' '+str); } }
Saída: