1 /*用链表实现的队列--使用的是双端链表 2 *注意:空指针错误肯定是引用没有指向对象 3 * */ 4 public class MyLinkedQueue { 5 private MyFirstAndLastLinkedList list; 6 private int items; 7 8 public MyLinkedQueue() { 9 list = new MyFirstAndLastLinkedList(); 10 items = 0; 11 } 12 13 public boolean isEmpty(){ 14 return list.isEmpty(); 15 } 16 17 public void insert(int key){ 18 list.insertLast(key); 19 items++; 20 } 21 22 public Link remove(){ 23 items--; 24 return list.deleteFirst(); 25 } 26 27 public void displayQueue(){ 28 System.out.println("queue--front-- to--rear"); 29 list.displayLinkedList(); 30 } 31 32 public int size(){ 33 return items; 34 } 35 36 public static void main(String[] args) { 37 MyLinkedQueue queue = new MyLinkedQueue(); 38 for(int i = 0; i < 10; i++){ 39 queue.insert(i);//尾巴插入 40 } 41 queue.displayQueue(); 42 queue.remove();//移除头 43 queue.displayQueue(); 44 } 45 }