Java集合---Queue(队列)

来源:互联网 发布:哨位集成箱网络控制器 编辑:程序博客网 时间:2024/05/29 18:51

队列(Queue)可以看成是一种特殊的线性表,队列满足先进先出(FIFO)原则。

JDK中提供了Queue接口,同时使得LinkedList实现了该接口。

基本操作

import java.util.LinkedList;import java.util.Queue;/** * java.util.Queue * 队列 * 队列也可以存放一组元素,但是存取元素必须遵循:先进先出原则。 */public class QueueDemo {    public static void main(String[] args) {        /*         * LinkedList也实现了队列接口,因为它可以保存一组元素,并且首尾增删快。         * 正好符合队列的特点。         */        Queue<String> queue = new LinkedList<String>();        /*         * boolean offer(E e)         * 入队操作,向队尾追加一个新元素。          */        queue.offer("one");        queue.offer("two");        queue.offer("three");        queue.offer("four");        queue.offer("five");        queue.offer("six");        System.out.println(queue);        /*         * E poll()         * 出队操作,从队首获取元素,获取后该元素就从队列中删除          */        String str = queue.poll();        System.out.println(str);        System.out.println(queue);        /*         * E peek()         * 引用队首元素,但是不做出队操作          */        str = queue.peek();        System.out.println(str);        System.out.println(queue);        /*遍历*/        System.out.println("size: "+queue.size());        System.out.println("遍历开始");//      for(int i=queue.size(); i>0; i--){//          str = queue.poll();//          System.out.println("元素:"+str);//      }        while(queue.size()>0){            str = queue.poll();            System.out.println("元素:"+str);        }        System.out.println("遍历结束");        System.out.println(queue);    }}