package pr2.datenstrukturen.stack; import java.util.ArrayList; public class Stack { private final ArrayList elements; public Stack() { elements = new ArrayList(); } // Element auf den Stack legen public void push(T element) { elements.add(element); } // oberstes Element vom Stack entfernen und zurückgeben public T pop() { if (elements.isEmpty()) { return null; } return elements.remove(elements.size() - 1); } // oberstes Element zurückgeben, ohne es zu entfernen public T peek() { if (elements.isEmpty()) { return null; } return elements.get(elements.size() - 1); } // Stack leer? public boolean isEmpty() { return elements.isEmpty(); } // Anzahl der Elemente im Stack public int size() { return elements.size(); } }