¿Cómo ordenar Array, ArrayList, String, List, Map y Set en Java?



Este artículo se centra en la clasificación en Java. Aquí aprenderá a ordenar Array, ArrayList, String, List, Map y Set en Java.

La clasificación es una parte esencial de cualquier lenguaje de programación. Java, sin duda, es uno de los mejores lenguajes de programación. ¡Tiene varias características que lo hacen fácil! Este artículo lo ayudará a desarrollar todo sobre la clasificación especialmente, ordene Array, ArrayList, String, List, Map y Set en Java.

Los siguientes temas se tratan en este artículo de clasificación:





Vamos a empezar. :-)

Ordenar matriz en Java

Matrices en Java almacenar uno o más valores de un tipo de datos específico y proporcionar acceso indexado para almacenar el mismo en una sola variable. Veamos el siguiente programa para ordenar una matriz en Java en orden ascendente. Sin embargo, asegúrese de tener Java instalado .



diferencia entre anulación y sobrecarga

Ordenar matriz en Java - Orden ascendente

paquete Edureka import java.util.Arrays public class SortArray {public static void main (String [] args) {int [] arr = {52,12,2,72,4} // matriz de 5 elementos Arrays.sort (arr ) System.out.printf ('Arreglo ordenado [] =% s', Arrays.toString (arr))}}

Salida - Arreglo ordenado [] = [2, 4, 12, 52, 72]

Ordenar matriz en Java - Orden descendente

paquete Edureka import java.util.Arrays import java.util.Collections public class SortArray {public static void main (String [] args) {Integer [] arr = {52,12,2,72,4} // used Integer [ ] en lugar de int como colecciones Arrays.sort (arr, Collections.reverseOrder ()) // reverseorder () para orden descendente System.out.printf ('Sorted arr [] =% s', Arrays.toString (arr))} }

Salida: Arreglo ordenado [] = [72, 52, 12, 4, 2]

Nota: En el código anterior, he usado la matriz Integer [] en lugar de int debido a . Esto se debe a que reverseOrder () no admite tipos primitivos.



Mucha gente confunde con el concepto de matrices y ArrayList en Java. La siguiente tabla puede aclarar todas sus dudas.

Formación Lista de arreglo

Es de longitud fija

Es de longitud variable (tamaño dinámico)

Admite solo tipos de datos primitivos

Puede agregar diferentes objetos y datos a la lista

No admite una adición duplicada

Permite la adición de elementos duplicados

Puede atravesar solo en dirección de avance

Puede atravesar tanto en dirección hacia adelante como hacia atrás

El tamaño no se puede modificar dinámicamente

El tamaño se puede modificar dinámicamente


Espero que se haya aclarado con la diferencia, sigamos adelante y veamos cómo ordenar .

Ordenar ArrayList en Java (String)

La clasificación de ArrayList en Java se puede hacer fácilmente usando un simple método sort () . Consulte el siguiente código para ordenar ArrayList en Java.

package Edureka import java.util.Arrays import java.util.Collections import java.util. * public class sortingarraylist {public static void main (String args []) {ArrayList list = new ArrayList () // Complete la lista ArrayList list.add ('sorting') list.add ('java') list.add ('arraylist') list.add ('in') System.out.println ('Unsorted ArrayList:' + list) // colecciones de listas de arrays sin clasificar impresas sort (lista) // método de clasificación para orden ascendente System.out.println ('Sorted ArrayList' + 'en orden ascendente:' + lista) // imprime la lista de matrices ordenada}}

Salida -

ArrayList sin clasificar: [sorting, java, arraylist, in]
ArrayList ordenado en orden ascendente: [arraylist, in, java, sorting]

Continuando con la ordenación en el artículo de Java, veamos cómo se pueden ordenar los números enteros. Intentemos implementar la ordenación utilizando un método diferente, es decir, utilizando el método Collections.sort ().

Ordenar ArrayList en Java usando colecciones (enteros)

Puede ordenar Integer ArrayList usando el método Collections.sort ().

paquete Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingArrayList {public static void main (String args []) {ArrayList arraylist = new ArrayList () arraylist.add (48) arraylist. add (2) arraylist.add (19) arraylist.add (22) System.out.println ('Antes de ordenar:') // antes de ordenar por (int contador: arraylist) {System.out.println (contador)} Colecciones .sort (lista de matrices) // función para ordenar en orden ascendente System.out.println ('Después de ordenar:') // después de ordenar por (int contador: lista de matrices) {System.out.println (contador)}}}

Salida -
Antes de ordenar:
48
2
19
22
Después de ordenar:
2
19
22
48

Ordenar cadena en Java

String en Java es inmutable. No existe un método directo para ordenar un . Puede usar Arrays, que tiene un método CharArray () que creará una cadena de entrada de caracteres y usando otro método (Arrays.sort (char c []), podemos ordenar fácilmente.

paquete Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingString {public static String sortString (String inputString) {char Array1 [] = inputString.toCharArray () // conversión de la cadena de entrada a char array Arrays.sort (Array1) return new String (Array1) // devuelve cadena ordenada} public static void main (String [] args) {String inputString = 'Edureka' String outputString = sortString (inputString) System.out.println (' Cadena de entrada: '+ inputString) System.out.println (' Cadena de salida: '+ outputString)}}

Salida -
Cadena de entrada: Edureka
Cadena de salida: Eadekru

Ordenar una lista en java

Para ordenar una lista en , puede utilizar el método Collections.sort (). Consulte el siguiente código para obtener más información:

paquete Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingList {public static void main (String [] args) {Integer [] digits = new Integer [] {12,56,89 , 27,22,4,88,65,36} Lista digitsList = Arrays.asList (digits) Collections.sort (digitsList) // lista ordenada System.out.println ('Sorted String:' + digitsList)}}

Salida : Cadena ordenada: [4, 12, 22, 27, 36, 56, 65, 88, 89]

Ordenar un mapa en Java

Un mapa en Java pertenece a que contiene un par clave-valor. Por lo tanto, un mapa se puede ordenar de dos formas diferentes:

  • Ordenar por clave
  • Ordenar por valor

Ordenar por clave:

paquete Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingMap {public static void main (String [] args) {HashMap map = new HashMap () map.put (14, 'Aayushi ') map.put (2,' Rachit ') map.put (30,' Amit ') map.put (5,' Anamika ') TreeMap treeMap = new TreeMap (mapa) System.out.println (treeMap)}}

Salida: {2 = Rachit, 5 = Anamika, 14 = Aayushi, 30 = Amit}

Ordenar por valor:

paquete Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortingMap {public static void main (String [] args) {HashMap unSortedMap = new HashMap () unSortedMap.put (14, 'Aayushi ') unSortedMap.put (20,' Rachit ') unSortedMap.put (60,' Amit ') unSortedMap.put (70,' Anamika ') LinkedHashMap sortedMap = nuevo LinkedHashMap () unSortedMap.entrySet () .stream () .sorted (Map.Entry.comparingByValue ()) .forEachOrdered (x -> sortedMap.put (x.getKey (), x.getValue ())) System.out.println (sortedMap)}}

Salida: {14 = Aayushi, 60 = Amit, 70 = Anamika, 20 = Rachit}

Continuando con la ordenación en Java, veamos el último tema, es decir, clasifiquemos un conjunto en .

Ordenar conjunto en Java

Un conjunto en Java es una interfaz que amplía las colecciones. Es una colección desordenada de objetos que no almacena valores duplicados. Ahora no existe un método directo para ordenar un conjunto en Java. Ahora, para ordenar un conjunto, debe convertir un conjunto a Lista y luego usar la API collections.sort () y volver a convertir la lista en un conjunto. Consulte el siguiente código para obtener más información:

paquete Edureka import java.util.Arrays import java.util.Collections import java.util. * public class SortSet {public static void main (String [] args) {// Lista no clasificada HashSet numbersSet = new LinkedHashSet (Arrays.asList (12 , 56,89,27,22,4,88,65,36)) List numbersList = new ArrayList (numbersSet) // convertir conjunto a lista // Ordenar la lista Collections.sort (numbersList) numbersSet = new LinkedHashSet (numbersList) // convertir lista para establecer // Imprimir conjunto para confirmar System.out.println (numbersSet)}}

Salida : [4, 12, 22, 27, 36, 56, 65, 88, 89]

Esto nos lleva al final de nuestro blog sobre la clasificación en Java, donde ha aprendido a ordenar Array, ArrayList, String, Map y Set en Java. Espero que este blog le haya resultado informativo y que haya agregado valor a sus conocimientos.

Asegúrese de practicar tanto como sea posible y revertir su experiencia.

Revisar la por Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. El curso de certificación y capacitación Java J2EE y SOA de Edureka está diseñado para estudiantes y profesionales que desean ser desarrolladores de Java. El curso está diseñado para darle una ventaja en la programación de Java y capacitarlo para los conceptos básicos y avanzados de Java junto con varios marcos de Java como Hibernate y Spring.

Tienes una pregunta para nosotros? Por favor, menciónelo en la sección de comentarios de este 'Ordenamiento en Java: Array, ArrayList, String, Map y Set en Java' y nos comunicaremos con usted lo antes posible.