Cómo ordenar un HashMap por clave y valor en Java 8 – Tutorial completo

Publicado: 2020-09-18
Cómo ordenar un HashMap por clave y valor en Java 8 - Tutorial completo

En Java 8 - ¿Cómo ordenar un mapa?

En Crunchify hemos escrito casi ~400 tutoriales de Java y este es una adición a la categoría de Java8.

Me encanta la colección de Java y tengo varios tutoriales sobre cómo iterar a través de Map and List, LinkedList, JSONArray y mucho más.

En este tutorial, repasaremos la mejor manera de ordenar HashMap por clave y valor en Java8.

Empecemos:

  1. Crearemos la clase CrunchifySortMapByKeyValueJava8.java
  2. Cree HashMap<String, Integer> crunchifyMap y eso es lo que usaremos para ordenar por clave y valor.
  3. For KEY : vamos a agregar una empresa aleatoria de la lista
    • Patter: Número aleatorio entre 1 y 10 + (-) + 1 empresa de la lista
    • lista de empresas: crunchify.com, google.com, twitter.com
  4. For VALUE : vamos a sumar un número aleatorio entre 1 y 50
  5. Imprimiremos el mapa original, ordenado por mapa clave y ordenado por mapa de valor

Mapa.Entrada. comparingByKey() devuelve un comparador que compara Map.Entry en orden natural en la clave.

Mapa.Entrada. comparingByValue() devuelve un comparador que compara Map.Entry en orden natural según el valor.

Aquí hay un código Java completo:

Eche un vistazo a las dos preguntas mencionadas en el código a continuación con cuidado. Estas son utilidades simples por si acaso si desea usarlas en su proyecto.

  • ¿Cómo obtener un valor aleatorio de ArrayList?
  • ¿Cómo iterar a través de HashMap en Java 8?

CrunchifySortMapByKeyValueJava8.java

Salida de la consola de Eclipse:

Simplemente ejecute el programa anterior como una aplicación Java y debería ver un resultado como el siguiente.

Háganos saber si tiene algún problema al ejecutar el programa anterior.