logo

Cómo ordenar una lista en Java

Podemos utilizar los siguientes métodos para ordenar la lista:

cambiar el nombre en el directorio de Linux
  • Usando el método stream.sorted()
  • Usando el método Comparator.reverseOrder()
  • Usando el método Comparator.naturalOrder()
  • Usando el método Collections.reverseOrder()
  • Usando el método Collections.sort()

Interfaz de flujo de Java

La interfaz Java Stream proporciona dos métodos para ordenar la lista:

método ordenado ()

La interfaz Stream proporciona un método sorted() para ordenar una lista. Se define en la interfaz Stream que está presente en paquete java.util . Devuelve una secuencia ordenada según el orden natural. Si los elementos no son comparables, arroja java.lang.ClassCastException. La firma del método es:

 Stream sorted() 

Parámetro

T: Es un tipo de elemento stream.

Java Stream.sorted (comparador comparador)

También devuelve una secuencia ordenada según el comparador proporcionado. Es estable para una secuencia ordenada. La firma del método es:

 Stream sorted(Comparator comparator) 

Parámetros

  • T es el tipo de elemento de corriente.
  • comparador que se utilizará para comparar elementos

Ejemplo

En el siguiente ejemplo, hemos utilizado los siguientes métodos:

lobo o zorro
  • En Java 8, stream() es una API utilizada para procesar colecciones de objetos.
  • El método Collect() se utiliza para recibir elementos de una secuencia y almacenarlos en una colección.
  • toList() devuelve el recopilador que recopila todos los elementos de entrada en una lista, en orden de encuentro.

Ejemplo

 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); } } 

Producción:

Cómo ordenar una lista en Java

Método Java Comparator.reverseOrder()

ReverseOrder() es un método de la interfaz Comparator que se define en el paquete java.util. El método devuelve un comparador que impone el orden inverso al natural. Lanza NullPointerException al comparar nulo. La firma del método es:

 static <t extends comparable> Comparator reverseOrder() </t>

Comparable también es una interfaz que pertenece a un paquete java.lang.

Parámetros

T: tipo comparable de elemento a comparar.

Ejemplo

Ups concepto en java
 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(&apos;78&apos;, &apos;a&apos;, &apos;m&apos;, &apos;b&apos;, &apos;z&apos;, &apos;c&apos;, &apos;12&apos;, &apos;l&apos;, &apos;1&apos;); ListsortedList=slist.stream().sorted(Comparator.reverseOrder()).collect(Collectors.toList()); sortedList.forEach(System.out::println); } } 

Producción:

Cómo ordenar una lista en Java

Comparador de Java.naturalOrder()

El método devuelve un comparador que compara objetos comparables en el orden natural. El comparable devuelto es serializable. Cuando comparamos nulo, arroja NullPointerException. Es de Java 8. La firma del método es:

 Static <t extends comparable> Comparator naturalOrder() </t>
  • El método ordena los elementos en orden natural (orden ascendente).
  • Pone nulo en la parte superior, si lo hay.
  • Pone los elementos de letras mayúsculas primero en orden natural, después de las letras minúsculas en orden natural, si la lista tiene letras minúsculas y mayúsculas.

Parámetros

T: Tipo comparable de elemento a comparar.

Ejemplo

 import java.util.*; public class SortListExample3 { public static void main(String[] args) { List country = Arrays.asList(&apos;Russia&apos;, &apos;India&apos;, &apos;China&apos;, &apos;Japan&apos;, &apos;&apos;, &apos;Ghana&apos;); List country1 = Arrays.asList(&apos;Russia&apos;,&apos;india&apos;, &apos;China&apos;, &apos;Japan&apos;, &apos;&apos;, &apos;ghana&apos;); 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); } } 

Producción:

Cómo ordenar una lista en Java

Método Java Collections.reverseOrder()

Es el método de la clase Java Collections que pertenece a un paquete java.lang. Devuelve un comparador que impone el orden inverso al natural. La firma del método es:

 public static Comparator reverseOrder() 

Parámetros

hora de la cena versus la hora de la cena

La clase de los objetos comparados por el comparador.

Ejemplo

 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); } } 

Producción:

Cómo ordenar una lista en Java

Método Java Collections.sort()

La clase Colecciones tiene dos métodos para ordenar una lista:

método ordenar()

El método sort() ordena la lista en orden ascendente, según el orden natural de sus elementos. La firma del método es:

 public static <t extends comparable> void sort() (List list) </t>

Parámetros

T: Es un parámetro de tipo.

lista: la lista que se va a ordenar.

Veamos otro ejemplo del método Collections.sorts().

comparación de cadenas en java

Ejemplo

 import java.util.*; public class SortListExample5 { public static void main(String[] args) { List sList = new ArrayList(); sList.add(&apos;m&apos;); sList.add(&apos;k&apos;); sList.add(&apos;a&apos;); sList.add(&apos;p&apos;); sList.add(&apos;d&apos;); Collections.sort(sList); //sorts array list for(String str: sList) System.out.print(&apos; &apos;+str); } } 

Producción:

Cómo ordenar una lista en Java