更新时间:2020-08-11 17:06:10 来源:极悦 浏览3641次
实现TreeMap
public IteratordescendingIterator()
返回在此set元素上按降序进行迭代的迭代器。
指定者:
接口NavigableSet
返回:
在此set元素上按降序进行迭代的迭代器
从以下版本开始:
1.6
而TreeMap的键就是一个TreeSet集合啊,所以就很好做了。但是我们用keySet()得到的是一个Set集合,descendingIterator()只能由TreeSet调用,所以就要把set转换成TreeSet
以TreeMap
import java.util.Iterator;
import java.util.Set;
import java.util.TreeMap;
import java.util.TreeSet;
public class SetAndTreeSet {
/**
* Wang Yanming
*/
public static void main(String[] args) {
TreeMap tm = new TreeMap();
tm.put(1,"中国");
tm.put(2,"首都");
tm.put(3,"北京");
//如何将这三个排序实现输出北京、首都、中国??
Set set = tm.keySet();
//我们知道Integer是final类不允许取继承和重写其中方法。
//而 tm.keySet()得到的是Integer类型的集合set,从小到大遍历如:
Iterator it = set.iterator();
//while(it.hasNext())
//{
// System.out.println(tm.get(it.next()));//输出的顺序是中国 首都 北京
//}
//如何进行反向输出呢?TreeeSet提供了一个descendingIterator()得到降序迭代器
//但是只有TreeSet可以调用,就需要将Set转化成treeSet了
TreeSet ts = new TreeSet();
while(it.hasNext())
{
ts.add(it.next());
}
Iterator it2 = ts.descendingIterator();
while(it2.hasNext())
{
System.out.println(tm.get(it2.next()));//输出顺序北京 首都 中国
}
}
}
代码讲的很细了。不明白或那位大牛有更好的办法一起讨论吧
这是对于TreeMap而言,但是要是List就好办了,可以利用ListIterator按任意顺序排列
以上就是极悦java培训机构的小编针对“Java treemap反向遍历的实现”的内容进行的回答,希望对大家有所帮助,如有疑问,请在线咨询,有专业老师随时为你服务。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习