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中有多少個元素,等等。
新聞熱點
疑難解答