简单的堆栈实现举例

public class Stack {
private Object[] elements;
private int size = 0;
private static final int DEFAULT_INITIAL_CAPACITY = 16;

public Stack() {
elements = new Object[DEFAULT_INITIAL_CAPACITY];
}

public void push(Object e) {
ensureCapacity();
elements[size++]=e;
}

public Object pop(){
if(size==0){
throw new EmptyStackException();
}
Object result = elements[--size];
elements[size]=null;
return result;
}

public boolean isEmpty(){
return size==0;
}

private void ensureCapacity() {
if (elements.length == size) {
elements = Arrays.copyOf(elements, 2 * size + 1);

}
}

}

posted on 2019-06-17 16:46  jped  阅读(549)  评论(0)    收藏  举报