/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package javaclass; /** * * @author CJ */ public class Stack { private ArrayList elementData = new ArrayList(); public void push(Object o) { elementData.add(o); } public Object pop() { return elementData.remove(elementData.size()-1); } public Object peek() { return elementData.get(elementData.size()-1); } public boolean isEmpty() { return elementData.size()==0; } public int size() { return elementData.size(); } @Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append("ArrayList: ["); for (int i = 0; i < elementData.size(); i++) { sb.append(elementData.get(i)).append(", "); } // System.err.println(size); sb.delete(sb.length()-2,sb.length()).append("]"); return sb.toString(); } public static void main(String[] args) { Stack newS = new Stack(); for(int i=0;i<10;i++){ newS.push(i); } System.err.println("Test push()"); System.err.println(newS); newS.pop(); System.err.println("Test pop()"); System.err.println(newS); System.err.println("Test peek()"); System.err.println(newS.peek()); System.err.println(newS); } }