同样实现方法有两种:

1. 数组的实现,可以存储任意类型的数据(略);

2. Java的 Collection集合 中自带的"队列"(LinkedList)的示例:

import java.util.Stack;

/**
* 用“栈”实现队列
*
* @author skywang
*/
public class StackList<T> { // 向队列添加数据时:(01) 将“已有的全部数据”都移到mIn中。 (02) 将“新添加的数据”添加到mIn中。
private Stack<T> mIn = null;
// 从队列获取元素时:(01) 将“已有的全部数据”都移到mOut中。(02) 返回并删除mOut栈顶元素。
private Stack<T> mOut = null;
// 统计计数
private int mCount = 0; public StackList() {
mIn = new Stack<T>();
mOut = new Stack<T>();
mCount = 0;
} private void add(T t) {
// 将“已有的全部数据”都移到mIn中
while (!mOut.empty())
mIn.push(mOut.pop()); // 将“新添加的数据”添加到mIn中
mIn.push(t);
// 统计数+1
mCount++;
} private T get() {
// 将“已有的全部数据”都移到mOut中
while (!mIn.empty())
mOut.push(mIn.pop());
// 统计数-1
mCount--; // 返回并删除mOut栈顶元素
return mOut.pop();
} private int size() {
return mCount;
}
private boolean isEmpty() {
return mCount==0;
} public static void main(String[] args) {
StackList slist = new StackList(); // 将10, 20, 30 依次推入栈中
slist.add(10);
slist.add(20);
slist.add(30); System.out.printf("isEmpty()=%b\n", slist.isEmpty());
System.out.printf("size()=%d\n", slist.size());
while(!slist.isEmpty()) {
System.out.printf("%d\n", slist.get());
}
}
}

最新文章

  1. AOE网的关键路径的计算
  2. SAS 画折线图PROC GPLOT
  3. windows系统激活-使用微软官方公布的kms client setup key安装或安装后使用slmgr导入
  4. cocoaPads 安装及出现Analyzing dependencies之后卡死解决方案
  5. poj2488 bfs
  6. 康力优蓝机器人 -- 优友U05类人型机器人发布
  7. Boostrap响应式与非响应式
  8. FKP,一套全栈框架,基于react、webpack、koa1、babel
  9. APMServ5.2.6升级PHP
  10. js监听input等表单输入框的变化事件oninput
  11. UNIX环境高级编程——线程同步之互斥量
  12. 【机器学习笔记五】聚类 - k均值聚类
  13. MacBook IDEA激活码(附视频)
  14. ansible基础-Jinja2模版 | 测试
  15. 【c++】计算句子中单词的平均长度
  16. SwitchHosts—hosts管理工具
  17. Spark Core(四)用LogQuery的例子来说明Executor是如何运算RDD的算子(转载)
  18. Android Source 源码已下载但 Android Studio 找不到的解决办法
  19. poj 3415 后缀数组 两个字符串中长度不小于 k 的公共子串的个数
  20. Python 使用Microsoft SQL Server数据库

热门文章

  1. 基于TCP的套接字
  2. xmlhttp
  3. [NOI.AC]DELETE(LIS)
  4. 结构体的sort【防止遗忘w】
  5. qstring转string
  6. FEATURE_MCT_READERDIRECT问题
  7. 7.11 cookie 失效后 ,重新登陆 页面 可能跳出 框架 ,只剩主题 部分 ,
  8. 2018.07.01洛谷P2617 Dynamic Rankings(带修主席树)
  9. 2018.06.29 NOIP模拟 繁星(前缀和)
  10. python pip国内源