Java定义栈结构,实现入栈、出栈操作

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() + "\t栈大小为:" + stack.size() + "\t出栈元素为:" + 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

 

posted @ 2019-09-05 10:05  缘故为何  阅读(4801)  评论(0编辑  收藏  举报