JaVA问题,帮帮忙啊

来源:百度知道 编辑:UC知道 时间:2024/06/25 04:08:45
下面的的Stack类用来模拟一个栈的数据结构,请将此程序中错误的地方修改成正确的程序,并单独声明一个类用来测试Stcak类。(请将完整正确的程序写在下方,并把原来的程序删除)

public class Stack {

//栈的最大长度
private int maxsize;
//栈中的元素
private int[] datas;
//栈顶的位置
private int top //此行存在一个错误

public void Stack() {//此行存在一个错误
datas = new int[100];
top = -1;
}

public void Stack(int maxsize) { //此行存在一个错误
maxsize = maxsize; //此行存在一个错误
datas = new int[maxsize];
top = -1;
}

/**
* 功能:插入元素data为新的栈顶元素
* 参数:Object data
*/
public void push(int data) {
if (top < maxsize - 1) {
datas[++top] = data;
}
}

/**
* 功能:从栈中取出数据
* 返回值:Object 从栈中取出的元素,堆栈是空的就返回-10001
*/
public int pop() {
if (top == -1)
return -10001;
return datas[top--];
}

/**
* 功能:

public class Stack {

//栈的最大长度
private int maxsize;
//栈中的元素
private int[] datas;
//栈顶的位置
private int top //此行存在一个错误
//改为:private int top;
public void Stack() {//此行存在一个错误
//改为:public Stack(){
datas = new int[100];
top = -1;
}

public void Stack(int maxsize) { //此行存在一个错误
//改为:public Stack(int maxsize){
maxsize = maxsize; //此行存在一个错误
//改为:this.maxsize=maxsize;
datas = new int[maxsize];
top = -1;
}
public void push(int data) {
if (top < maxsize - 1) {
datas[++top] = data;
}
}
public int pop() {
if (top == -1)
return -10001;
return datas[top--];
}
public int getTop() {
if (top == -1)
return -10001;
return datas[top];
}
public boolean empty() {
return top = -1; //此行存在一个错误