Java如何实现queue队列?
来源:互联网 发布:淘宝什么是权重 编辑:程序博客网 时间:2024/06/05 07:17
演示如何在雇员结构实现一个队列。
代码块
import java.util.LinkedList;class GenQueue<E> { private LinkedList<E> list = new LinkedList<E>(); //将指定元素添加到此列表的结尾 public void enqueue(E item) { list.addLast(item); } //获取并移除此列表的头(第一个元素) public E dequeue() { return list.poll(); } //list.isEmpty()如果列表不包含元素,则返回 true public boolean hasItems() { return !list.isEmpty(); //当列表包含元素,返回true } //返回此列表的元素数 public int size() { return list.size(); } public void addItems(GenQueue<? extends E> q) { while (q.hasItems()) list.addLast(q.dequeue()); }}public class GenQueueTest { public static void main(String[] args) { //定义类GenQueue<Employee> GenQueue<Employee> empList; //实例化变量empList empList = new GenQueue<Employee>(); ////定义类GenQueue<HourlyEmployee> GenQueue<HourlyEmployee> hList; //实例化变量hList hList = new GenQueue<HourlyEmployee>(); hList.enqueue(new HourlyEmployee("T", "D")); hList.enqueue(new HourlyEmployee("G", "B")); hList.enqueue(new HourlyEmployee("F", "S")); empList.addItems(hList); System.out.println("The employees' names are:"); while (empList.hasItems()) { Employee emp = empList.dequeue(); System.out.println(emp.firstName + " " + emp.lastName); } }}//Employee类class Employee { //属性 public String lastName; public String firstName; //无参构造函数 public Employee() { } //有参构造函数 public Employee(String last, String first) { this.lastName = last; this.firstName = first; } public String toString() { return firstName + " " + lastName; }}//钟点工HourlyEmployee类class HourlyEmployee extends Employee { //属性 public double hourlyRate; //有参构造函数 public HourlyEmployee(String last, String first) { super(last, first); }}运行结果:The employees' names are:D TB GS F
阅读全文
0 0
- Java如何实现queue队列?
- 基于双链表 实现Java Queue队列
- 使用Java实现简单的队列(queue)
- Java实现栈Stack和队列Queue
- Java实现一个简单的队列---Queue
- 队列的实现 queue
- C++实现队列queue
- STL-queue实现队列
- queue队列的实现
- 队列 Queue 用链表实现队列
- java 队列Queue
- Java Queue队列
- java queue 队列
- java中的队列Queue
- Java 队列 Queue
- java队列queue
- Java集合:队列: Queue
- Java队列Queue
- 关于python 和C++使用cv画矩形并填充颜色同时填充文字
- ScrollView+指示器
- 三种东西永远不要放到数据库里
- Python提供了以下几个内置tools模块:operator collections itertools functools
- 20个常用正则
- Java如何实现queue队列?
- 事件流与window.addEventListener介绍说明重点是window.addEventListener里面true和false的区别
- android两图相交
- 关于matlab提示“警告: 矩阵为奇异工作精度” 的问题
- javadoc工具文档API生成
- 需求分析--我的第一个java-web项目之路(一)
- Mongo入门
- Windows10 以管理员身份运行的解决办法
- 爬虫小程序-01