package com.pxshuo.se01.basic.impl; /** * 基本数据结构-栈 * @author Pxshuo * */ public class Stack { private ArrayList elementData = new ArrayList(); /** * 使一个元素入栈 * @param o 将要入栈的元素 */ public void push(Object o){ elementData.add(elementData.size(), o); } /** * 使一个元素出栈 * @return 返回出栈的元素 */ public Object pop(){ return elementData.size() == 0 ? null : elementData.remove(elementData.size() - 1); } /** * 获得栈顶元素 * @return 返回栈顶元素 */ public Object peek(){ return elementData.size() == 0 ? null : elementData.get(elementData.size() - 1); } /** * 查看栈是否为空 * @return 空的话返回true */ public boolean isEmpty(){ return elementData.size() == 0 ? true : false; } /** * 查看栈中元素的个数 * @return 返回栈中的个数 */ public int size(){ return elementData.size(); } }