De forma predeterminada, los elementos de TreeMap se ordenan en orden ascendente de claves. Podemos iterar el TreeMap en orden inverso para mostrar los elementos en orden descendente de claves.
Muestre los elementos de TreeMap en orden inverso:
import java.util.*; class TreeMapDemo { public static void main(String args[]) { Map<String, String> treemap = new TreeMap<String, String>(Collections.reverseOrder()); // Put elements to the map treemap.put("Key1", "Jack"); treemap.put("Key2", "Rick"); treemap.put("Key3", "Kate"); treemap.put("Key4", "Tom"); treemap.put("Key5", "Steve"); Set set = treemap.entrySet(); Iterator i = set.iterator(); // Display elements while(i.hasNext()) { Map.Entry me = (Map.Entry)i.next(); System.out.print(me.getKey() + ": "); System.out.println(me.getValue()); } } }
Producción:
Key5: Steve Key4: Tom Key3: Kate Key2: Rick Key1: Jack
Como puede ver, los elementos se muestran en orden inverso al de las teclas.
Obtenga más información sobre Collections.reverseOrder () en javadoc:
public static Comparator reverseOrder()
: Devuelve un comparador que fuerza el orden inverso del orden natural en una colección de objetos que implementan la interfaz Comparable. (La ordenación natural es la ordenación impuesta por el método compareTo de objetos). Esto permite un lenguaje simple para ordenar (o mantener) colecciones (o matrices) de objetos que implementan la interfaz Comparable en orden natural inverso. Por ejemplo, suponga que a es una matriz de cadenas. Luego: Arrays.sort(a, Collections.reverseOrder());
ordena la matriz en orden alfabético inverso (lexicográfico). El comparador devuelto es serializable.
Vuelve:
Un comparador que aplica el orden inverso al orden natural en una colección de objetos que implementan la interfaz Comparable.
Referencia:
Colecciones.reverseOrder ()