【Java集合框架】10 ——Deque 接口

一、Deque 接口的介绍

Deque接口是位于java.util包 队列接口的一个子类型。Deque与双端队列有关,双端队列支持从数据结构的任意一端添加或删除元素。它既可以用作队列(先进先出/FIFO),也可以用作堆栈(后进先出/LIFO)。Deque是双端队列的缩写。

在这里插入图片描述

1.1 Deque 接口声明

deque接口声明为:

public interface Deque<E> extends Queue<E> 

由于Deque是一个接口,所以不能以Deque类型创建对象。我们总是需要一个扩展这个列表的类来创建对象。而且,在Java 1.5中引入泛型之后,可以限制可以存储在Deque中的对象的类型。

实例:使用Deque的实现类LinkedList创建对象

        Deque<String> deque = new LinkedList<String>();
        // 添加尾部元素
        deque.add(" 1 (尾部)");

        // 添加头部元素
        deque.addFirst(" 2 (头部)");

        // 添加在尾部元素
        deque.addLast(" 3 (尾部)");

        // 添加头部元素
        deque.push(" 4 (头部)");

        // 添加在尾部元素
        deque.offer(" 5 (尾部)");

        // 添加头部元素
        deque.offerFirst(" 6 (头部)");

        System.out.println(deque + "\n");

        // 删除头部元素,尾部元素
        deque.removeFirst();
        deque.removeLast();
        System.out.println("Deque 删除后" + "头部和尾部" + deque);

输出

[ 6 (头部),  4 (头部),  2 (头部),  1 (尾部),  3 (尾部),  5 (尾部)]

Deque 删除后头部和尾部[ 4 (头部),  2 (头部),  1 (尾部),  3 (尾部)]

二、Deque 接口的API

MethodDescription
boolean add(object)它用于将指定的元素插入到deque容器中,成功时返回true。
boolean offer(object)它用于在deque容器中插入指定的元素。
Object remove()它用于检索和移除deque容器的头部。
Object poll()它用于检索和移除该deque容器的头部,如果该deque容器为空,则返回null。
Object element()它用于检索,但不移除该deque的头部。
Object peek()它用于检索,但不删除该deque容器的头部,如果该deque容器为空,则返回null。
Object peekFirst()该方法返回deque容器的头元素。该方法不会从deque容器中移除任何元素。当deque为空时,该方法返回Null。
Object peekLast()该方法返回deque容器的最后一个元素。该方法不会从deque容器中移除任何元素。当deque为空时,该方法返回Null。
Boolean offerFirst(e)将元素e插入到队列的前面。如果插入成功,返回true;否则,false
Object offerLast(e)将元素e插入到队列的尾部。如果插入成功,返回true;否则,false
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值