企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# 如何在 Java 中以相反的顺序迭代`TreeMap` > 原文: [https://beginnersbook.com/2014/07/how-to-iterate-treemap-in-reverse-order-in-java/](https://beginnersbook.com/2014/07/how-to-iterate-treemap-in-reverse-order-in-java/) 默认情况下,`TreeMap`元素按键的升序排序。我们可以以相反的顺序迭代`TreeMap`,以按键的降序显示元素。 #### 以相反的顺序显示`TreeMap`元素: ```java 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()); } } } ``` **输出:** ```java Key5: Steve Key4: Tom Key3: Kate Key2: Rick Key1: Jack ``` 如您所见,元素以与键相反的顺序显示。 **更多关于[`Collections.reverseOrder()` javadoc](https://docs.oracle.com/javase/7/docs/api/java/util/Collections.html#reverseOrder()): `public static Comparator reverseOrder()`:返回一个比较器,它对实现`Comparable`接口的对象集合施加自然顺序的反转。 (自然排序是由对象自己的`compareTo`方法强加的排序。)这使得一个简单的习惯用法可以对反向自然顺序实现`Comparable`接口的对象的集合(或维护)进行排序(或维护)。例如,假设`a`是一个字符串数组。然后:`Arrays.sort(a, Collections.reverseOrder());` 以反向字典(按字母顺序)顺序对数组进行排序。返回的比较器是可序列化的。 **返回:** 一个比较器,它对实现`Comparable`接口的对象集合施加自然顺序的反转。 **参考:** [`Collections.reverseOrder()`](https://docs.oracle.com/javase/7/docs/api/java/util/Collections.html#reverseOrder())