自定义栈。
package per.eyuan.util;
public class MyStack {
//用来存储状态,符号,语义等信息
//字符串栈
private String s[]=new String[50];
private int top;//栈顶
public MyStack() {
super();
init();
}
public void init(){
for(int i=0;i<s.length;i++){
s[i]=new String();
}
top=-1;
}
//获取栈中元素的个数
public int getLength(){
return top+1;
}
public void push(String s1){
top++;
s[top]=s1;
}
public String pop(){
if(top==-1){
return null;
}else{
String s2=s[top];
top--;
return s2;
}
}
public String getTop(){
if(top==-1){
return null;
}else{
return s[top];
}
}
public String[] getAll(){
//返回栈中所有元素
if(top==-1){
System.out.println("null,the stack is empty");
return null;
}else{
int i=0;
String ss[]=new String[top+1];
for(int ii=0;ii<ss.length;ii++){
ss[ii]=new String();
}
while(i<=top){
ss[i]=s[i];
i++;
}
return ss;
}
}
}