转自:http://blog.csdn.net/guijava/archive/2009/01/15/3784658.aspx
在java5中新增加了java.util.Queue接口,用以支持队列的常见操作。该接口扩展了java.util.Collection接口。
Queue使用时要尽量避免Collection的add()和remove()方法,而是要使用offer()来加入元素,使用poll()来获取并移出元素。它们的优
点是通过返回值可以判断成功与否,add()和remove()方法在失败的时候会抛出异常。 如果要使用前端而不移出该元素,使用
element()或者peek()方法。
值得注意的是LinkedList类实现了Queue接口,因此我们可以把LinkedList当成Queue来用。
import java.util.LinkedList;
import java.util.Queue;
public class TestQueue {
public static void main(String[] args) {
Queue<String> queue = new LinkedList<String>();
queue.offer("Hello");
queue.offer("World!");
queue.offer("你好!");
System.out.println(queue.size());
String str;
while ((str = queue.poll()) != null) {
System.out.print(str);
}
System.out.println();
System.out.println(queue.size());
}
}
分享到:
相关推荐
在Java中,`java.util`包提供了多种队列实现,包括: 1. **LinkedList**:`java.util.LinkedList` 是一个双向链表,同时实现了`Deque`接口,可以作为队列使用。插入和删除操作的时间复杂度为O(1),但在随机访问元素...
### Java并发工具包 `java.util.concurrent` 知识点详解 #### 一、引言 随着多核处理器的普及和应用程序复杂度的增加,多线程编程成为了现代软件开发不可或缺的一部分。为了简化并发编程的复杂性,Java 5 引入了 `...
在Java编程语言中,`Queue`接口是集合框架的一部分,它代表了先进先出(FIFO)的数据结构,也就是我们通常所说的队列。队列是一种非常基础且实用的数据结构,广泛应用于多线程同步、任务调度、缓存管理等多个场景。...
本教程重点讲解了Java.util包中的主要组件和使用方法,旨在帮助初学者深入理解并熟练运用这个包。 1. **集合框架**: Java.util包是Java集合框架的基础,包括List、Set、Queue等接口以及ArrayList、LinkedList、...
本教程将深入探讨如何在Java中使用队列,特别是通过LinkedList实现。 ### 1. Java 队列接口 Java提供了多种队列实现,但它们都基于两个主要的接口:`Queue` 和 `Deque`。`Queue` 是基本的队列接口,而 `Deque`...
11. **队列和并发队列**:`java.util.Queue`接口及其实现如ArrayDeque、LinkedList(作为Queue的实现),以及`java.util.concurrent`包下的并发队列如LinkedBlockingQueue、ConcurrentLinkedQueue等,提供高效的数据...
Java.util包是Java标准库中的核心包之一,它包含了大量用于通用编程的类和接口,是Java开发中不可或缺的一部分。这个包提供了数据结构、集合框架、事件处理、日期时间、随机数生成、位集以及与I/O流操作相关的辅助...
在Java中,我们可以使用`java.util.Queue`接口及其实现类,如`LinkedList`或`ArrayDeque`来创建队列。队列在排队叫号系统中起到存储等待服务的客户和决定服务顺序的作用。 在模拟排队叫号系统时,我们通常会创建两...
在Java中,队列可以使用`java.util.Queue`接口及其实现类如`LinkedList`来创建。 2. **Java 面向对象编程**:此项目中,队列可能被实现为一个类,包含队列的基本操作,如添加元素(enqueue)、移除元素(dequeue)...
2. **集合框架**:在Java 6中,集合框架是一个重要的部分,它提供了多种数据结构,如列表(List)、队列(Queue)、集(Set)和映射(Map)。`java.util.ArrayList`和`java.util.LinkedList`是两种常见的列表实现,...
在Java中,可以使用`java.util.Queue`接口及其实现类(如`LinkedList`、`ArrayDeque`等)来创建和操作队列。例如,对于题目中提到的模拟营业厅程序,可以创建一个队列来存储等待服务的顾客,每次有新的顾客到来时,...
9. EventObject和EventListener接口:与事件处理相关,是观察者模式的一部分,通常在图形用户界面编程中使用。 10. ResourceBundle类:用于加载和管理本地化资源,便于应用程序根据不同地区的语言和文化习惯显示...
本篇文章将深入探讨如何使用`java.util.concurrent` 实现线程池队列,以及其中的关键概念和技术。 线程池是一种线程使用模式,通过预先创建并维护一定数量的工作线程来避免频繁创建和销毁线程的开销。在Java中,`...
(完整项目,可直接食用)Java提供的java.util.Queue是一个接口没有构造函数。试用java.util.Stack泛型栈作为父类,用另一...除提供无参构造函数Queue( )外,其它所有队列函数严格参照java.util.Queue的接口定义实现。
Java集合框架中的`java.util.Queue`接口提供了多种队列操作,如添加元素、移除元素以及检查队列头元素等。队列常用于任务调度、多线程通信和数据缓冲等场景。本教程包含以下关键知识点: 1. **Queue接口**:Queue是...
- **队列(Queue)**:`java.util.Queue`接口定义了队列的行为,`java.util.LinkedList`和`java.util.PriorityQueue`都是队列的具体实现。 - **树(Tree)**:`java.util.TreeMap`和`java.util.TreeSet`分别实现了基于...
在Java中,队列可以借助接口`java.util.Queue`和实现类如`LinkedList`来创建和操作。 队列的主要特点包括: 1. **先进先出**:元素的添加和移除都是按照严格的顺序进行,新添加的元素位于队尾,而最早加入的元素...
Java中可以使用LinkedList、ArrayList或PriorityQueue来实现队列,其中LinkedList和ArrayList适用于普通队列,而PriorityQueue则用于优先级队列。以下是一个使用LinkedList实现的队列示例: ```java import java....
2. **集合框架**:`java.util`包,包括了列表(List)、队列(Queue)、映射(Map)等数据结构,如ArrayList、HashMap等。这些接口和类为处理各种数据结构提供了强大的支持。 3. **输入/输出流**:`java.io`包,...