您的位置:首页 > 其它

编译原理——赋值语句和简单表达式(十七)

2012-03-31 09:30 232 查看
四元式栈。

FourItemStack.java:

package per.eyuan.util;

public class FourItemStack {
private int top;
private FourItem fis[]=new FourItem[30];

public FourItemStack() {
super();
init();
}
public void init(){
for(int i=0;i<fis.length;i++)
fis[i]=new FourItem();
top=-1;
}

public int getLength(){
return top+1;
}
public void push(FourItem fi){
top++;
fis[top]=fi;
}
public FourItem pop(){
if(top==-1){
return null;
}else{
FourItem fi=fis[top];
top--;
return fi;
}
}
public FourItem getTop(){
if(top==-1){
return null;
}else{
return fis[top];
}
}
public FourItem[] getAll(){
//返回栈中所有元素
if(top==-1){
System.out.println("null,the stack is empty");
return null;
}else{
int i=0;
FourItem fiss[]=new FourItem[top+1];
for(int ii=0;ii<fiss.length;ii++){
fiss[ii]=new FourItem();
}
while(i<=top){
fiss[i]=fis[i];
i++;
}
return fiss;
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: