public class Mystack { int []elem; int size; public Mystack(){ elem=new int[10]; } public int push(int e){ ensureCapacity(); elem[size++] = e; return e; } public int peek(){ if(empty()){ throw new RuntimeException("栈为空,无法获取栈顶元素"); } return elem[size-1]; } public boolean empty(){ return 0 == size; } public int pop(){ int e = peek(); size--; return e; }//扩容 private void ensureCapacity(){ if(size==elem.length) elem= Arrays.copyOf(elem,size*2); }}