JAVA数组简单模拟栈

//用数组去模拟简单的压栈和出栈动作

public class MyStack01 {
private Object[] stack;
private int index=-1;
public MyStack01() {
this.stack = new Object[10];
}

public Object[] getStack() {
return stack;
}

public void setStack(Object[] stack) {
this.stack = stack;

}
public int getIndex() {
return index;
}

public void setIndex(int index) {
this.index = index;
}


public void push(Object obj) {
//当内存满时 if (index >= stack.length-1) { System.out.println("内存已满,压栈失败"); return; } index ++; stack[index] = obj; System.out.println("压栈成功"+obj+"指针指向"+index); } public void pop() {
//栈内空时 if (index < 0) { System.out.println("栈内已空"); }else { System.out.println("弹栈元素成功"+stack[index]); index--; if (index == -1) { return; } System.out.println("现栈帧指向"+index); } } public static void main(String[] args) { MyStack01 myStack01 = new MyStack01(); //每调用一个元素就压栈一次 myStack01.push(new Object()); myStack01.push(new Object()); myStack01.push(new Object()); myStack01.push(new Object()); //每调用一个一次pop方法就弹栈一次 myStack01.pop(); myStack01.pop(); myStack01.pop(); myStack01.pop(); myStack01.pop(); } }

  

posted @ 2021-06-23 13:11  小Ti客栈  阅读(59)  评论(0)    收藏  举报