先进后出
实现public class Stack {
//声明一个数组
private int[] arr;
//声明头结点
private int flage = 0;
public Stack(int size) {
arr = new int[size];
}
//添加数据
public void add(int x) {
//判断栈是否已满
if (flage == arr.length) {
//如果满了,实现扩容
int[] brr = new int[arr.length * 2];
for (int i = 0; i < arr.length; i++) {
brr[i] = arr[i];
}
arr = brr;
}
arr[flage] = x;
flage = flage + 1;
}
//获取的方法
public Integer get() {
//这个地方属于优化
if(flage == 0) {
return null;
}
int re = arr[flage-1];
flage = flage -1; //很多同学在这个地方已陷入疑惑
return re;
}
}



