栈是一种先进后出的数据结构。
public class StackTest{
private Object[] data=null;
private int maxsize=0;
private top=-1;
StackTest(){
this(10);//调用有参构造
}
public StackTest(int initsize){
if(initsize>=0){
this.maxsize=initsize;
data=new Object(maxsize);
top=-1;
}else{
System.out.println("初始化栈大小不小于0");
}
}
//压栈
public boolean push(Object obj){
if(top==maxsize-1){
System.out.println("栈已满");
}
else{
data[++top]=obj;
return true;
}
}
//弹栈
public Object pop(){
if(top==-1){
throw new RuntimeException("栈已空");
}else{
return data[top--];
}
}
//查看栈尾元素
public Object peek(){
if(top==-1){
throw new RuntimeException("栈已空");
}else{
return data[top];
}
}
}