package com.example.demo; import java.util.ArrayList; public class Stack { ArrayList<Object> list = new ArrayList<>(); //入栈 public void push(Object o){ list.add(o); } //出栈 public Object pop(){ Object o = list.get(list.size() - 1); list.remove(o); return o; } //栈是否为空 public boolean isEmpty(){ return list.isEmpty(); } //栈大小 public int size(){ return list.size(); } //打印栈元素 @Override public String toString(){ return String.valueOf(list); } } class main{ public static void main(String[] args) { //创建一个栈 Stack stack = new Stack(); //入栈 for(int i=1;i<=10;i++){ stack.push(i); } //出栈 while(!stack.isEmpty()){ System.out.println("栈:" + stack.toString() + " 栈大小为:" + stack.size() + " 出栈元素为:" + stack.pop()); } } }
栈:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 栈大小为:10 出栈元素为:10 栈:[1, 2, 3, 4, 5, 6, 7, 8, 9] 栈大小为:9 出栈元素为:9 栈:[1, 2, 3, 4, 5, 6, 7, 8] 栈大小为:8 出栈元素为:8 栈:[1, 2, 3, 4, 5, 6, 7] 栈大小为:7 出栈元素为:7 栈:[1, 2, 3, 4, 5, 6] 栈大小为:6 出栈元素为:6 栈:[1, 2, 3, 4, 5] 栈大小为:5 出栈元素为:5 栈:[1, 2, 3, 4] 栈大小为:4 出栈元素为:4 栈:[1, 2, 3] 栈大小为:3 出栈元素为:3 栈:[1, 2] 栈大小为:2 出栈元素为:2 栈:[1] 栈大小为:1 出栈元素为:1