Java 数组双端队列数据结构中的迭代器

Itearator in Array Deque Data Structure in Java

static ArrayDeque<Integer> bfs = new ArrayDeque<Integer>();
static Iterator<Integer> revbfs = new ArrayDeque<Integer>();

revbfs=bfs.descendingIterator();

非常快的问题。我想以相反的顺序 return bfs。有 descendingIteartor 方法,我只是不确定它是什么 returning。在这种情况下 revbfs 会是什么?我如何使用该方法获得我的反向订单?

嗯,用这段代码很容易测试:

public class Test {
    static Deque<Integer> bfs = new ArrayDeque<>();

    public static void main(String[] args) {
        bfs.add(1);
        bfs.add(2);
        bfs.add(3);

        Iterator<Integer> revbfs = bfs.descendingIterator();
        while(revbfs.hasNext()) {
            System.out.println(revbfs.next());
        }
        // output is 3, 2, 1
    }

}

此外,official docs 可能非常有用,在这种情况下:

Iterator descendingIterator()

Returns an iterator over the elements in this deque in reverse sequential order. The elements will be returned in order from last (tail) to first (head).

每当您不确定某些 class/method 行为时,请尝试搜索、阅读和测试。