java 队列方法详解「建议收藏」

java 队列方法详解「建议收藏」一、队列支持的方法(Queue) throwexception returnspecialvalue insert add 1、增加元素不能为null 2、其他异常,比如有界队列 offer 1、元素不能为null 2、实现内部调用addF…

大家好,又见面了,我是你们的朋友全栈君。

一、队列支持的方法(Queue)

 

throw exception

return special value

insert

add

1、增加元素不能为null

2、其他异常,比如有界队列

offer

1、元素不能为null

2、实现内部调用addFirst,既也可能抛出异常

remove

remove

队列空时:NoSuchElementException

poll

队列空时:return null

examine

element

队列空时:NoSuchElementException

peek

队列空时:return null

 

二、双端队列(Deque)

        Deque继承自Queue接口,可以作为单端队列使用

 

队头操作(Head)

队尾操作(Tail)

 

throw exception

return special value

throw exception

return special value

Insert

addFirst

1、增加元素不能为null

2、其他异常,比如有界队列

offerFirst

1、元素不能为null

2、实现内部调用addFirst,既也可能抛出异常

addLast

同addFirst

offerLast

1、元素不能为null

2、实现内部调用addFirst,既也可能抛出异常

remove

romoveFirst

队列空时:NoSuchElementException

也就是说,使用时必须判空

pollFirst

队列空时:return null

removeLast

队列空时:NoSuchElementException

pollLast

队列空时:return null

examine

getFirst (变态,element成了get)

队列空时:NoSuchElementException

使用时必须判空

peekFirst

队列空时:return null

getLast

队列空时:NoSuchElementException

peekLast

队列空时:return null

三、栈

Deque定义了LIFO的栈操作

栈方法

内部调用

备注

push

 

addFirst

1、元素不能为空

2、可能抛出异常,内部调用的是addFirst

pop

removeFirst

队列空时,会抛出异常NoSuchElementException

peek

peekFirst

return special value

四、阻塞队列BlockingQueue

 

Throws exception

Special value

Blocks

Times out

insert

add(e)

offer(e)

put(e)

offer(e, time, unit)

remove

remove()

poll()

take()

poll(time, unit)

examine

element()

peek()

 

单词不够用了吧

五、队列框架图

脉络只是主要的继承或实现脉络,没有包括collection等相关的接口或类实现脉络

java 队列方法详解「建议收藏」

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/156656.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • VMware虚拟机安装xp系统

    VMware虚拟机安装xp系统安装vmware安装xpxp使用微软原版,vm版本15.5安装后,可以连接网络。资源提取码:链接:https://pan.baidu.com/s/1Vxrds1rjRMGcRjlGaDVy0Q提取码:0101–来自百度网盘超级会员V2的分享要实现文件共享,需要关机,然后设置,允许共享,然后开机,就可以了。…

    2022年8月16日
    6
  • redission jedis_redis could not get a resource

    redission jedis_redis could not get a resourceJedis操作Redis

    2025年10月15日
    4
  • flot中文详解

    flot中文详解

    2021年9月6日
    111
  • s3c2440中断体系

    s3c2440中断体系intmain(){while(1);return0;}

    2022年5月1日
    64
  • LODOP打印控件相关说明

    LODOP打印控件相关说明PRINT_INIT(strPrintTaskName);//初始化并指定打印任务名是strPrintTaskNamePREVIEW();//打印预览PRINT();//直接打印PRINTA();//选择打印机PRINT_SETUP();//打印维护**内容可也自动调整PRINT_DESIGN();//打印设计ADD_PRINT_HTM(0,0,”100%”,”100%”,document.documentElement.innerHTML);//打印整个页面/*intOrient:打印方

    2025年9月1日
    16
  • fstream中文路径

    fstream中文路径在C++的标准库中,std::fstream是个挺好用的文件读写流,操作文件很方便,因为是C++标准库,所以没有其它的环境依赖。在使用fstream过程中,有个打开中文路径文件会失败的问题,自己的代码中一直没处理好,这几天终于有点闲心,把这里改透。涉及很多知识点,也是个遗留已久的问题,特此做个记录。在最后用了个一劳永逸的解决此问题方法:将fstream、FILE再包装下。中文路径使用fstream调试程序过程中,发现打开含中文路径的文件时,会打开失败。查了一些资料,说在VS2008、vs200..

    2025年7月11日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号