为了账号安全,请及时绑定邮箱和手机立即绑定

遍历Queue发现一个小问题

遍历Queue发现一个小问题

MrMark 2016-09-29 12:24:13
今天自学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()方法吗?如果不是,是什么?感谢回答!
查看完整描述

1 回答

?
月落乌啼落日圆

TA贡献20条经验 获得超9个赞

                               poll()方法是用来实现检索并移除此队列的头,如果此队列为空,则返回null。 foreach是对queue进行遍历,不会影响queue中的数据。                            

查看完整回答
1 反对 回复 2016-09-29
  • 1 回答
  • 1 关注
  • 2307 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信