多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
``` // "static void main" must be defined in a public class. class MyStack { //栈 private List<Integer> data; // store elements //用动态数组初始化栈 public MyStack() { data = new ArrayList<>(); } //插入一个元素到栈顶,自动将元素添加到最后新的索引上 public void push(int x) { data.add(x); } //看栈是否为空 public boolean isEmpty() { return data.isEmpty(); } //根据数组最后一个索引得到栈顶元素 public int top() { return data.get(data.size() - 1); } public boolean pop() { //为空,不能退栈 if (isEmpty()) { return false; } //移除栈顶元素,为索引最后的元素 data.remove(data.size() - 1); return true; } }; public class Main { public static void main(String[] args) { MyStack s = new MyStack(); s.push(1); s.push(2); s.push(3); for (int i = 0; i < 4; ++i) { if (!s.isEmpty()) { //打印栈顶元素 System.out.println(s.top()); } //弹出栈顶元素 System.out.println(s.pop()); } } } ```