我的Data Structures and Problem Solving using Java 书中有以下问题:
Write a routine that uses the Collections API to print out the items in any Collection in reverse order. Do not use a ListIterator.
我把它放在这里并不是因为我想让别人帮我做作业,我只是似乎无法理解它要求我编写代码的确切内容!
当它让我写一个“例程”时,它是在寻找一个单一的方法吗?我真的不明白如何让一个方法适用于所有不同类型的集合(链表、队列、堆栈)。
如果有人能指导我正确的方向,我将不胜感激。
最佳答案
不管这个问题没有多大意义,因为一半的集合没有 gstable 排序或有固定排序(即 TreeSet 或 PriorityQueue),您可以使用以下语句以反向自然顺序打印集合的内容:
List temp = new ArrayList(src);
Collections.reverse(temp);
System.out.println(temp);
我本质上是创建一个数组列表,因为列表是唯一可以任意重新排序的结构。您将 src 集合传递给构造函数,该构造函数使用集合自然顺序中的 src 内容初始化列表。然后将列表传递给 Collections.reverse() 方法,该方法反转列表,最后打印它。
关于java - 以相反的顺序打印出任何集合中的项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/196628/