Saltar al contenido

Cómo iterar hashmap en orden inverso en Java

Solución:

el mejor enfoque para lograr la iteración de hashmap en orden inverso

HashMap no define ningún orden particular de su elemento. Por lo tanto, el orden “inverso” tampoco está definido.

Para TreeMap, puedes usar descendingMap().

Hashmap no tiene un orden específico. Pero puedes usar TreeMap.

Quizás este sencillo ejemplo pueda ayudarte:

Map<Integer, String> map = new TreeMap<Integer, String>();
        map.put(1, "abc1");
        map.put(2, "abc2");
        map.put(3, "abc3");

        ArrayList<Integer> keys = new ArrayList<Integer>(map.keySet());
        for(int i=keys.size()-1; i>=0;i--){
            System.out.println(map.get(keys.get(i)));
        }

Un HashMap no mantiene ningún orden entre claves.

Un TreeMap ordena sus claves por su orden natural, o por el orden impuesto por un comparador que pasa al construir el mapa. Entonces, si desea tener las claves enteras ordenadas en orden inverso, construya el TreeMap de esta manera:

Map<Integer, List<String>> sortedMap = 
    new TreeMap<Integer, List<String>>(Collections.reverseOrder());
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *