今天自学Queue的时候,学习到如何取出队列中所有元素,这是使用while去遍历的时候:
Queue<String> queue = new LinkedList<String>(); queue.offer("a"); queue.offer("b"); queue.offer("c"); queue.offer("d"); queue.offer("e"); while(queue.size()>0){ String poll = queue.poll(); System.out.print(poll+" "); } System.out.println("\n"+queue);
此刻可以全部输出,并且原队列中已经没有元素了。
然后我用新循环去取同样的队列元素
for(String s : queue){ System.out.print(s+" "); } System.out.println("\n"+queue);
元素同样全部能够取到,但发现队列中的元素还在。
请问,这是怎么实现的?新循环循环队列的时候调用的不是poll()方法吗?如果不是,是什么?
感谢回答!
月落乌啼落日圆
相关分类