Java零基础手把手系列:ArrayDeque简洁却不简单入门

本文介绍了Java中的ArrayDeque,一种双端队列实现,可以用于实现Stack和Queue。文章详细讲解了ArrayDeque的主要方法、用法、实现原理,包括成员变量、容量计算以及作为Stack和Queue的工作机制。ArrayDeque以其高效的常数时间复杂度操作和非线程安全特性,成为快速队列实现的选择。
摘要由CSDN通过智能技术生成

 

Java零基础手把手系列:Queue最简入门之后,今天一起学习其中双端队列Deque的一种实现:ArrayDeque

可以添加博主VX:crazy042438讨论

目录

1. ArrayDeque简介

2. 主要方法

3. 主要用法

    3.1 使用ArrayDeque实现Stack

    3.2 使用ArrayDeque实现Queue

4.实现原理简析

    4.1 主要成员

    4.2 特别的容量计算

        4.2.1 容量是如何计算的

        4.2.2 容量计算图解

        4.3 用作Stack(栈)

        4.4 用作Queue(队列)

5. ArrayDeque特点总结

1. ArrayDeque简介

ArrayDeque是一种特殊的自增长数组:允许往它的头部和尾部插入或者删除数据,它是Java内置的实现类(继承自Deque)。

既然头部/尾部都可以添加/删除数据,所以ArrayDeque可以用来实现数据结构中的Stack(后进先出LIFO)和队列(先进先出FIFO)。

虽然Java里面实现Stack和Queue有很多替换类,但是文档里面说:

这就非常有意思了,我们一起来看看。

2. 主要方法

ArrayDeque的方法(增加删除等)都提供两类操作:一类调用之后返回状态(如true),一类调用不成功会抛出异常,如(NullPointerException),主要的方法如下:

功能 方法 返回状态 方法 抛出异常
往头部插入 offerFirst(e) true/异常 addFirst(e) NullPointerException
从头部删除 pollFirst() nu
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值