`

java的队列和栈的一些api

阅读更多
类 Stack<E>
java.lang.Object
  java.util.AbstractCollection<E>
      java.util.AbstractList<E>
          java.util.Vector<E>
              java.util.Stack<E>

Stack 类表示后进先出(LIFO)的对象堆栈。它通过五个操作对类 Vector 进行了扩展 ,允许将向量视为堆栈。它提供了通常的 push 和 pop 操作,以及取堆栈顶点的 peek 方法、测试堆栈是否为空的 empty 方法、在堆栈中查找项并确定到堆栈顶距离的 search 方法。
构造函数
Stack() 
          创建一个空堆栈。
[b]方法:[/b]boolean empty() 
          测试堆栈是否为空。 
 E peek() 
          查看堆栈顶部的对象,但不从堆栈中移除它。 
 E pop() 
          移除堆栈顶部的对象,并作为此函数的值返回该对象。 
 E push(E item) 
          把项压入堆栈顶部。 
 int search(Object o) 
          返回对象在堆栈中的位置,以 1 为基数。 


接口 Queue<E>
类型参数:
E - collection 中所保存元素的类型。
所有超级接口:
Collection<E>, Iterable<E>
所有已知子接口:
BlockingDeque<E>, BlockingQueue<E>, Deque<E>
所有已知实现类:
AbstractQueue, ArrayBlockingQueue, ArrayDeque, ConcurrentLinkedQueue, DelayQueue, LinkedBlockingDeque, LinkedBlockingQueue, LinkedList, PriorityBlockingQueue, PriorityQueue, SynchronousQueue


boolean add(E e)
          将指定的元素插入此队列(如果立即可行且不会违反容量限制),在成功时返回 true,如果当前没有可用的空间,则抛出 IllegalStateException。
E element()
          获取,但是不移除此队列的头。
boolean offer(E e)
          将指定的元素插入此队列(如果立即可行且不会违反容量限制),当使用有容量限制的队列时,此方法通常要优于 add(E),后者可能无法插入元素,而只是抛出一个异常。
E peek()
          获取但不移除此队列的头;如果此队列为空,则返回 null。
E poll()
          获取并移除此队列的头,如果此队列为空,则返回 null。
E remove()
          获取并移除此队列的头。
分享到:
评论

相关推荐

    java中栈和队列的实现和API的用法(详解)

    下面小编就为大家带来一篇java中栈和队列的实现和API的用法(详解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    Java面试宝典和毕设PPT模板

    数据结构和算法:了解常见的数据结构(如数组、链表、栈、队列、树、图等)以及经典的算法(如排序、搜索、动态规划等)。准备解释各种数据结构和算法的工作原理,并能够编写相关的代码。 设计模式:熟悉一些常见的...

    常用数据结构及其算法的Java实现.zip

    包括但不仅限于链表、栈,队列,树,堆,图等经典数据结构及其他经典基础算法(如排序等)... Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems公司于1995年5月正式发布。它的设计目标是“一次编写,...

    java内部学习笔记.docx

    2.14 Java系统API方法调用 14 2.15二进制基础 14 2.16 Java基础其他注意事项 14 面向对象 16 3.1类 16 3.2对象 16 3.3包 16 3.4方法及其调用 17 3.5引用 17 3.6访问控制(封装) 17 3.7构造器 17 3.8 super()、super...

    电商系统,电商平台后台二次开发优秀模板,采用最新java技术栈,个人珍藏资源

    Swagger-UI | 文档生产工具 | [https://github.com/swagger-api/swagger-ui](https://github.com/swagger-api/swagger-ui) Hibernator-Validator | 验证框架 | [http://hibernate.org/validator/]...

    基于最新的Java 21和SpringBoot 3.2 根据eladmin项目进行改造+源代码+文档说明

    - 使用最新技术栈,社区资源丰富,基于Java 21(Core Module Support 17-21)、Spring Boot 3.2。 (Support Virtual Threads/fibre/loom) - 基于注解的动态查询(Specification),可根据需要扩充查询注解。 - 支持...

    Java语言基础下载

    JavaScript和Java的区别 499 基于对象和面向对象 499 解释和编译 499 强变量和弱变量 500 静态联编和动态联编 500 实例 500 内容总结 503 独立实践 504 第二十六章:JavaScript基础 505 学习目标 505 基本结构 506 ...

    JAVA 范例大全 光盘 资源

    实例66 栈和队列(运用LinkedList) 157 实例67 电视频道(运用集的相关类) 162 实例68 植物种类(运用映射的相关类) 165 实例69 不重复的随机数序列 168 实例70 读写Properties文件 170 实例71 配置...

    算法第四版-PDF-网盘链接

     1.3 背包、队列和栈 74  1.3.1 API 74  1.3.2 集合类数据类型的实现 81  1.3.3 链表 89  1.3.4 综述 98  1.4 算法分析 108  1.4.1 科学方法 108  1.4.2 观察 108  1.4.3 数学模型 112 ...

    Java开发实战1200例(第1卷).(清华出版.李钟尉.陈丹丹).part3

    本书是第II卷,以开发人员在项目开发中经常遇到的问题和必须掌握的技术为中心,介绍了应用Java进行桌面程序开发各个方面的知识和技巧,主要包括Java语法与面向对象技术、Java高级应用、窗体与控件应用、文件操作...

    Java高并发高性能分布式框架从无到有微服务架构设计(1).doc

    使用JAVA中效率高的类,比如Array List比Vector性能好.&gt;高并发 - 需要解决的问题一:应用缓存二:缓存三:多级缓存四:池化五:异步并发六:扩容七 :队列高并发-应用缓存堆缓存 使用Java堆内存来存储缓存对象....

    基于SpringBoot+Vue毕业生信息招聘平台源码.zip

    该平台的实现采用了目前主流的Java技术框架SpringBoot作为后端开发框架,使用了线程池、缓存、消息队列等技术手段来提高系统性能。前端采用Vue.js技术栈开发,并使用Webpack打包工具来管理模块化代码和提高网页性能...

    大数据中台架构栈.doc

    针对不同的数据来源有各自的采集方式,从 APP/效劳器 日志,到业务表,还有各种 API 接口及数据文件等等。其中因为日志数据有数据量多,数据结构多样,产生环境复杂等 特点,属于「重点照顾」的对象。目前市面针对...

    《算法》中文版,Robert Sedgewick,塞奇威克

    1.3 背包、队列和栈 1.3.1 API 1.3.2 集合类数据类型的实现 1.3.3 链表 1.3.4 综述 1.4 算法分析 1.4.1 科学方法 1.4.2 观察 1.4.3 数学模型 1.4.4 增长数量级的分类 1.4.5 设计更快的算法 1.4.6 倍率...

Global site tag (gtag.js) - Google Analytics