Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- *
- * <p>Klasse Stack</p>
- * <p>Objekte der Klasse Stack (Keller, Stapel) verwalten beliebige
- * Objekte nach dem Last-In-First-Out-Prinzip, d.h. das zuletzt
- * abgelegte Objekt wird als erstes wieder entnommen.</p>
- *
- *
- *
- * @version 2010-10-20
- */
- public class Stack {
- private Node head;
- // Node
- /**
- *Die Klasse Node wird in der Klasse Stack erzeugt
- * Ein Knoten besteht aus einem Inhaltsobjekt
- * und einem Nachfolgeknoten.
- */
- private class Node {
- private Object content = null;
- private Node nextNode = null;
- public Node(Object pObject) {
- content = pObject;
- nextNode = null;
- }
- public void setNext(Node pNext) {
- nextNode = pNext;
- }
- public Node getNext() {
- return nextNode;
- }
- public Object getContent() {
- return content;
- }
- } // Ende Node
- // Stack//G
- /**
- * Ein Leerer Stapel wird erzeugt
- */
- public Stack() {
- head = null;
- }
- //Y
- /**
- * Die Anfrage liefert den Wert true, wenn der Stapel
- * keine Objekte enthaelt, sonst liefert sie den Wert false.
- * @return true, falls der Stapel leer ist, sonst false.
- */
- public boolean isEmpty() {
- return (head == null);
- }
- //V
- /**
- * Das Objekt pObject wird oben auf den Stapel gelegt.
- * Falls pObject gleich null ist, bleibt der Stapel unveraendert.
- * @param pObject ist das einzufuegende Objekt.
- */
- public void push(Object pObject) {
- if (pObject != null) {
- Node lNode = new Node(pObject);
- lNode.setNext(head);
- head=lNode;
- }
- }
- //E
- /**
- *Das zuletzt eingefuegte Objekt wird von dem Stapel entfernt.
- * Falls der Stapel leer ist, bleibt er unveraendert.
- */
- public void pop() {
- if (!isEmpty())
- head = head.getNext();
- }
- //R
- /**
- *
- * Die Anfrage liefert das oberste Stapelobjekt.
- * Der Stapel bleibt unveraendert.
- * Falls der Stapel leer ist, wird null zurueck gegeben.
- * @return Inhaltsobjekt
- */
- public Object top() {
- if (!this.isEmpty())
- return head.getContent();
- else
- return null;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement