Learn to use Collections.sort () method to sort arraylist of custom objects in java with examples.
Por padrão, este método ordena o não triado List
em ordem ascendente, ou seja, de acordo com a ordenação natural dos itens da lista. Podemos usar coleções.método reverseOrder () para a ordenação inversa.
ordenar a lista de colecções de objectos.sort (List )
- It orders the specified
List
items into their natural order., - todos os elementos do
list
devem implementar a interface comparável. - todos os elementos da lista devem ser mutuamente comparáveis e não devem lançar
ClassCastException
. - este tipo é garantido para ser estável. Isso significa que elementos iguais não serão reordenados como resultado desse tipo.
- a
list
deve ser modificável, mas não precisa ser redimensionável.o método - não devolve nenhum valor.,
exemplo 1: ordenar a lista de cadeias de caracteres
exemplo de Java para ordenar uma lista de nomes lexicograficamente ou na ordem do dicionário.
Exemplo 2: ordenação de matrizes de objetos personalizados por campo com comparável
podemos precisar classificar lista de objetos personalizados que têm sua própria lógica de ordenação. Nesse caso, implemente a interface Comparator
na classe personalizada.
Por exemplo, o objeto de domínioEmployee
tem uma lógica de corasão personalizada baseada no empregadoid
campo., Checkout for comparison logic in compareTo () method.
Java program to sort the list of employee objects by id
, in ascending and descending orders.saída do programa.
, E , E , E , E ], E , E , E , E ]
Sort Arrilist of objects – Collections.de classificação( lista de Comparação )
Se objeto de domínio não implementa Comparable
interface, então podemos usar personalizado Comparator
implementações. Use a expressão lambda para encurtar ainda mais a sintaxe.,
exemplo 1: Criar um comparador personalizado
esta é a sintaxe geral para criar um comparador em Java.
If in Java 8, use lambda expression to make the syntax more readable.
Exemplo 2: ordenar a lista de objetos por campo com comparador
Saída do programa.
, E , E , E , E ], E , E , E , E ]
Happy Learning !!este post foi útil?