Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- * Beschreiben Sie hier die Klasse StringStackImpl.
- *
- * @author (Sami Askar)
- * @version (03.07.19)
- */
- public class StringStackImpl implements StringStack
- {
- private int laenge=0;
- private StringKnoten kopf = new StringKnoten(null,null);
- private StringKnoten top = kopf;
- /**
- * Konstruktor für Objekte der Klasse StringStackImpl
- */
- public StringStackImpl()
- {
- }
- public void push(String s){
- if(s==null){
- throw new IllegalArgumentException();
- }
- StringKnoten knoten = new StringKnoten(s,top);
- top = knoten;
- laenge++;
- }
- /**
- * Diese Operation liefert true, wenn der Stack keinen String enthält,
- * false sonst.
- */
- public boolean isEmpty(){
- return laenge==0;
- }
- /**
- * Diese Operation liefert den obersten String als Ergebnis, ohne
- * ihn vom Stack zu entfernen.
- * Diese Operation darf nur aufgerufen werden, wenn isEmpty() false liefert,
- * ansonsten wird eine IllegalStateException geworfen.
- */
- public String top(){
- if(isEmpty()){
- throw new IllegalStateException();
- }
- return top.gibInhalt();
- }
- /**
- * Diese Operation nimmt den obersten String vom Stack herunter
- * und liefert ihn als Ergebnis.
- * Diese Operation darf nur aufgerufen werden, wenn isEmpty() false liefert,
- * ansonsten wird eine IllegalStateException geworfen.
- */
- public String pop(){
- if(isEmpty()){
- throw new IllegalStateException();
- }
- String inhalt = top.gibInhalt();
- top=top.gibNachfolger();
- laenge--;
- return inhalt;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement