package com.coding.basic;
import java.lang.ArrayIndexOutOfBoundsException;
import java.util.EmptyStackException;
public class Stack {
private ArrayList elementData = new ArrayList();
public void push(Object o) {
elementData.add(o);
// System.out.println("size is " + elementData.size());
}
public Object pop() {
int elementData_size = elementData.size();
if (elementData_size == 0) {
throw new EmptyStackException();
}
Object top_data = elementData.get(elementData_size - 1);
elementData.remove(elementData_size - 1);
return top_data;
}
public Object peek() {
if (elementData.size() == 0) {
throw new EmptyStackException();
}
return elementData.get(elementData.size() - 1);
}
public boolean isEmpty() {
return elementData.size() == 0;
}
public int size() {
return elementData.size();
}
}