`

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中的栈和队列是两种常用的数据结构,分别用于实现后进先出(LIFO)和先进先出(FIFO)的数据存储和处理。以下是java中栈和队列的实现和API的用法详解。 一、栈的实现 在...

    数据结构--表、栈、队列(java)

    本章节介绍了表、栈和队列三种重要的数据结构及其在Java中的实现方式。表作为一种灵活的线性数据结构,既可以基于数组也可以基于链表实现;栈和队列则是具有特定操作规则的特殊表。这些数据结构在算法设计和软件开发...

    JavaAPI文档中文版

    `java.util`包含了集合框架、日期时间、队列、栈、散列映射等常用工具类。 2. **集合框架**:在`java.util`包中,集合框架是Java API的重要组成部分,它提供了List、Set、Map等接口,以及ArrayList、LinkedList、...

    Java模拟栈和队列数据结构的基本示例讲解

    Java中的栈和队列是两种基本的数据结构,它们在编程中有着广泛的应用。栈(Stack)遵循“后进先出”(Last In First Out, LIFO)原则,而队列(Queue)则遵循“先进先出”(First In First Out, FIFO)原则。 栈的...

    关于Java_Collection_API_

    在Java中,栈和队列通常用于实现先进后出(FILO)和先进先出(FIFO)的数据结构。 - **栈**:尽管`java.util.Stack`类可以用来实现栈操作,但其实它已经被标记为过时,并不推荐使用。相反,`LinkedList`实现了`...

    无人机后端开发java无人机后端开发java

    Java的并发API(如ExecutorService、Future、Callable、Thread)可帮助开发者构建高效的并发处理机制,确保系统的响应速度和稳定性。 4. **数据处理与存储** 无人机产生的数据量巨大,需要高效的数据处理和存储...

    JAVA面试题(Zookeeper、消息队列、分布式等最新的也有)

    本篇将详细探讨Java面试中涉及的一些关键概念,包括Zookeeper、消息队列以及分布式系统。 首先,Zookeeper是Apache Hadoop的一个子项目,它是一个分布式的,开放源码的分布式应用程序协调服务。Zookeeper提供了诸如...

    JavaAPI超全

    - `java.util`包:包含集合框架、日期时间、泛型、队列、栈、排序等工具类,如ArrayList、HashMap、LinkedList等。 2. **Java集合框架**: - 集合接口:如List、Set、Queue,以及它们的实现类如ArrayList、...

    收纳操作系统、JAVA、算法、数据库、中间件、解决方案、架构、DevOps和大数据等技术栈总结

    中间件是连接不同系统和应用的关键,例如消息队列(RabbitMQ、Kafka)、API网关、分布式缓存等。它们能解决系统间的异步通信、负载均衡、数据一致性等问题。 解决方案通常是指针对特定业务场景的技术组合,比如...

    GO语言基于beego Api开发的日志队列消费者

    在本项目中,我们主要探讨的是使用Go语言和beego框架来开发一个API,该API主要用于处理日志队列消费。beego是一个流行的Go语言Web应用框架,它提供了丰富的功能和简洁的API,使得开发过程更为高效。我们将利用beego...

    java_ee_api_中英文对照版.chm

    这个“java_ee_api_中英文对照版.chm”文件是Java EE API的详细文档,其中包含了全面的接口、类和方法的说明,而且特别之处在于它提供了中英文双语注释,对于学习和理解Java EE技术栈非常有帮助。 Java EE API包含...

    JDK+1.6+API中文版

    - `java.util`: 提供了集合框架、日期和时间设施、数据结构(如栈、队列、映射)和事件模型。 - `java.io`: 提供了基本的输入/输出功能,如文件操作、串流读写等。 - `java.net`: 处理网络通信,包括TCP/IP套接字...

    Java面试准备资料大全

    10. **算法**:算法是解决问题的核心,面试中经常涉及排序算法(快速排序、归并排序等)、查找算法(二分查找、哈希查找等)、图算法(最短路径、最小生成树)以及数据结构(链表、队列、栈、树、图)等。...

    Java刷算法题常用API文档

    本篇文档将列举一些在刷算法题时常用的Java API,并对它们进行简要的解释。 首先,字符串(String)类是处理文本数据时的基础。在Java中,String 类提供了大量方法来操作字符串数据。例如: - `charAt(int index)` ...

    java api中文文档

    Java API中文文档是Java开发者的重要参考资料,它包含了Java平台标准版(Java SE)的所有公共类、接口和枚举等编程元素的详细说明。这个文档由Sun Microsystems(后被Oracle收购)官方发布,确保了信息的权威性和...

    java redis使用之利用jedis实现redis消息队列.docx

    本文将详细介绍如何利用 Java 和 Jedis(Java 客户端库)来实现基于 Redis 的消息队列。 #### 二、Jedis 库简介 Jedis 是一个高性能的 Java 客户端库,用于与 Redis 数据库进行交互。它提供了丰富的 API 来操作 ...

    java基础语法、面向对象、常用API、反射&集合、IO流&网络编程

    5. **集合框架**:Java集合框架是一组接口和类,它们提供了数据结构(如列表、队列、栈、集、映射)的实现。重要接口有List(如ArrayList和LinkedList)、Set(如HashSet和TreeSet)、Map(如HashMap和TreeMap),...

    基于Java的Rails3消息队列系统 Sidekiq.zip

    然而,由于业务需求或者特定环境,有时我们需要在Java环境中使用类似的队列系统,这可能涉及到技术栈的整合和跨语言通信。 标题"基于Java的Rails3消息队列系统 Sidekiq.zip"表明我们要讨论的是如何在Java环境中利用...

    JAVA个人发展技术栈共1页.pdf.zip

    【标题】"JAVA个人发展技术栈共1页.pdf.zip" 提示我们这是一份关于Java开发者个人技能进阶的主题资料,可能包含了一位Java程序员在职业道路上需要掌握的关键技术和知识领域。"共1页"表明内容可能简洁而精炼,聚焦于...

    JAVA的一些经典代码

    4. **集合框架**:Java集合框架包括数组列表、链表、队列、栈、映射等数据结构。JavaDemo3.java可能涉及到这些数据结构的使用,比如ArrayList、HashMap等。 5. **I/O流**:JavaDemo008.java可能涉及文件读写或网络...

Global site tag (gtag.js) - Google Analytics