欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  Java

模拟堆栈的方法介绍

程序员文章站 2022-04-13 22:33:37
...
/*

*在大不久前,我决定自学Java,关注了很多的公众号、微博等。没几天我看到一个笑话:

*晚上孩子哭了,老婆让我去看看。

*我说:“不行,咱们的床是队列,你先上的床就得你先下床。。。

*老婆说:NO NO No,是栈。

* 紧接着一脚踹到我的屁股上。

* 当时,看了评论,都是在说程序员夫妻欢乐多之类的话,也上网查了堆栈的知识,

* 不是计算机专业的,看得也是云里雾里的。今天是二轮复习基础知识,

* 关于LinkedList有可以模拟堆栈的方法,就上手操作了一下,才理解了这个笑话的真谛,

* 越来越感觉,编程语言的魅力了,开心。

*/

 1 import java.util.LinkedList; 2  3 public class NoNo { 4     public static void main(String[] args) { 5         MyQueue q = new MyQueue(); 6         q.add("老婆先上床"); 7         q.add("我在老婆之后上床"); 8  9         while (q.isEmpty() == false) {10 11             System.out.println(q.get2() + "却要下床哄熊孩子");12 13         }14 15     }16 }17 18 class MyQueue {19     private LinkedList List;// 底层20 21     MyQueue() {22         List = new LinkedList();23     }24 25     public void add(Object obj) {26         List.addFirst(obj);27     }28     public Object get2() {29         // 模仿栈30         return List.removeFirst();31     }32 33     public boolean isEmpty() {34         return List.isEmpty();35     }36 }
PutOut:
我在老婆之后上床却要下床哄熊孩子
老婆先上床却要下床哄熊孩子
 1 import java.util.LinkedList; 2  3 public class NoNo { 4     public static void main(String[] args) { 5         MyQueue q = new MyQueue(); 6         q.add("老婆先上床"); 7         q.add("我在老婆之后上床"); 8  9         while (q.isEmpty() == false) {10             11                 System.out.println(q.get()+"却要下床哄熊孩子");12         }13 14     }15 }16 17 class MyQueue {18     private LinkedList List;// 底层19 20     MyQueue() {21         List = new LinkedList();22     }23 24     public void add(Object obj) {25         List.addFirst(obj);26     }27 28     public Object get(){29     //模仿队列30     return List.removeLast();31         }32 33     public boolean isEmpty() {34         return List.isEmpty();35     }36 }
OutPut:
老婆先上床却要下床哄熊孩子
我在老婆之后上床却要下床哄熊孩子

相关知识补充:

模拟堆栈的方法介绍

追源码:

模拟堆栈的方法介绍

以上就是模拟堆栈的方法介绍的详细内容,更多请关注其它相关文章!