package java_test; import java.util.LinkedList; public class LinkedListTest { public static void main(String[] args) { /* * 练习:请通过LinkesList实现一个堆栈,或者队列数据结构 * 堆栈:先进后出(子弹弹夹) First in Last out * 队列:先进先出 First in First out */ Myqueue queue = new Myqueue();//创建自定义队列对象 //添加元素 queue.myAdd("abc1"); queue.myAdd("abc2"); queue.myAdd("abc3"); queue.myAdd("abc4"); //获取所有元素,先进先出 while(!queue.isNull()){ System.out.println(queue.myGet()); } } static class Myqueue{ private LinkedList link; Myqueue(){ link = new LinkedList(); } /* * 添加元素的方法 */ public void myAdd(Object obj){ //内部使用的是LInkedList的方法 link.addFirst(obj); } /* * 取元素的方法 */ public Object myGet(){ return link.removeLast(); } /* * 集合中是否有元素的方法 */ public boolean isNull(){ return link.isEmpty(); } } }
存和取 有First Last ,如果保持不一致 就是队列,先进先出
否则是堆栈 先进后出