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 队列方法详解「建议收藏」

 

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

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

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • linux访问samba共享_centos7共享文件夹设置

    linux访问samba共享_centos7共享文件夹设置LinuxSamba共享配置教程一、samba介绍linux与windows共享文件一般的方法就是设置共享文件夹和搭建samba服务器。samba服务器作可以windows和linux交互的媒介,可以让windows用户轻松地在电脑上使用图形界面访问linux文件系统,并可以设置写入权限,实用性极佳。二、samba安装首先需要安装samba程序,部分Ubuntu镜像已经自带;执行如下命令即可sudoapt-getinstallsambasudoapt-getins

  • 簡單SQL存儲過程實例

    簡單SQL存儲過程實例

  • tar.bz2压缩方法「建议收藏」

    tar.bz2压缩方法「建议收藏」bzip2 -d  gcc-4.1.0.tar.bz2 —上面解压完之后执行下面的命令。tar-xvfgcc-4.1.0.tar或tar-xvf*.tar解完之后会出现多一个文件夹gcc-4.1.0

  • DNS递归和迭代过程详解

    DNS递归和迭代过程详解目录DNS原理解析DNS进化史DNS结构DNS查询流程DNS服务搭建DNS相关软件的安装服务器搭建规划手把手教你搭建基本DNS服务器搭建主DNS服务器搭建从DNS服务器参考文献DNS原理解析DNS进化史etc/hosts–>NIS–>DNS起初域名和ip地址之间的解析都是完全存放在一个名为hosts的文件当中…

  • 自学3D游戏建模有哪些教材?「建议收藏」

    自学3D游戏建模有哪些教材?「建议收藏」推荐书籍一:《3dsMax2016中文版完全自学手册》《3dsMax2016中文版完全自学手册》以零基础讲解为宗旨,用实例引导读者学习,深入浅出地介绍了3dsMax2016的相关知识、操作技巧和应用实例。此书着重于3dmax功能的讲解和介绍,实战训练较少,基础讲解不够深入。适用人群:对3dmax软件操作不熟悉的小白,想了解更多功能范围的设计师推荐书籍二:《ZBrush2018从入门到精通》《ZBrush2018从入门到精通》全书总共730页,27大章节,随书配送.

  • 那是什么进程 —— jusched.exe是什么? 它为何运行?「建议收藏」

    那是什么进程 —— jusched.exe是什么? 它为何运行?「建议收藏」       如果你曾经看到任务管理器里有个jusched.exe并很疑惑它究竟是什么,如果你将它关了,那么你很幸运,因为这个进程是负责Java更新的程序,它每个月检查一次Java是否有新的更新,并且一直在那儿浪费内存.       在Windows系统中有个调度任务的功能,由于这个进程每个月才被调度一次,显而易见不是什么重要更新,我不能理解这个进程为什么需要浪费我的内…

    2022年10月23日

发表回复

您的电子邮箱地址不会被公开。

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