JAVA如何以相反的方式循环集合

JAVA如何以相反的方式循环集合,java,set,Java,Set,我们如何以从最后一项到第一项的相反顺序循环集合 例如: 发件人:A B C D 到:D C B A在散列集合中,由于其集合无序,因此顺序不固定,但通过将集合转换为列表,您可以使用ListIterator,如下所示 //If you are using SET(unordered collection) ten convert to List first Set<String> set = new HashSet<String>(Arrays.asList(

我们如何以从最后一项到第一项的相反顺序循环集合

例如: 发件人:A B C D
到:D C B A

在散列集合中,由于其集合无序,因此顺序不固定,但通过将集合转换为列表,您可以使用ListIterator,如下所示

    //If you are using SET(unordered collection) ten convert to List first
    Set<String> set = new HashSet<String>(Arrays.asList("A","B","C","D"));
    List<String> list = new ArrayList<String>(set);
    ListIterator<String> iterator =  list.listIterator(list.size());
    while(iterator.hasPrevious()) {
        System.out.println(iterator.previous());
    }   
    //For TreeSet
    TreeSet<String> treeSet = new TreeSet<String>(Arrays.asList("A","B","C","D"));
    Iterator<String> iterator2 = treeSet.descendingIterator();
    while(iterator2.hasNext()) {
        System.out.println(iterator2.next());
    }       
}

.

A
Set
没有指定的顺序。所以它也没有相反的顺序。请为我们提供一个具体的(代码)示例,以便我们能够理解您的要求。(对于
哈希集
…您不能,因为哈希集没有定义的顺序。对于
树集
使用
下降迭代器()
D
C
B
A