java原始的Stack有着一些缺点,所以可以用LinkedList自己实现一个Stack。
public class Stack<T>{
private LinkedList<T> storage = new LinkedList<T>();
//入栈
public void push(T v){
storage.addFirst(v);
}
//返回栈顶元素的引用但不移除
public T peek(){
return storage.getFirst();
}
//出栈
public T pop(){
return storage.removeFirst();
}
//Stack是否为空
public boolean empty(){
return storage.isEmpty();
}
public String toString(){
return storage.toString();
}
}