龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > JAVA开发 >

用java.util.*的LinkedList实现stack

时间:2009-12-23 15:42来源:未知 作者:admin 点击:
分享到:
Java1.2以后没有提供stack的类,而123在好多的应用中都会使用到,在java1.0/java1.1中的stack实现于Vector,而Vector中有setElementAt() getElementAt() removeElementAt()等方法,我们知道stack定义为是只能在一

      Java1.2以后没有提供stack的类,而123在好多的应用中都会使用到,在java1.0/java1.1中的stack实现于Vector,而Vector中有setElementAt() getElementAt() removeElementAt()等方法,我们知道stack定义为是只能在一端操作的线性表,而Vector实现方法和stack的定义有冲突。java1.2以后的包就没有提供stack是实现的,大家要用到stack时可以用LinkedList里的方法来实现,现在给出我的实现,大家可能一起学习参考

  import java.util.*;

  class MyStack
  {
   LinkedList ll =new LinkedList();
   public void push(Object o)
   {
    ll.addFirst(o);
   }
   public Object pop()
   {
    return ll.removeFirst();
   }
   public Object peek()
   {
    return ll.getFirst();
   }
   public boolean empty()
   {
    return ll.isEmpty();
   }

   public static void main(String []args)
   {
    MyStack ms=new MyStack();
    ms.push("apple");
    ms.push("banana");
    ms.push("pear");

    System.out.println(ms.pop());
    System.out.println(ms.empty());
   }
  }

      在以后开发程序时用到stack可以加入MyStack类,也可以在扩充一下功能,如return stack中有多少个元素,等等。


  
精彩图集

赞助商链接