Advertisement
exnon

WiSe2016_StringKnoten_Sami

Jul 3rd, 2019
508
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 1.72 KB | None | 0 0
  1.  
  2. /**
  3.  * Beschreiben Sie hier die Klasse StringStackImpl.
  4.  *
  5.  * @author (Sami Askar)
  6.  * @version (03.07.19)
  7.  */
  8. public class StringStackImpl implements StringStack
  9. {
  10.     private int laenge=0;
  11.     private StringKnoten kopf = new StringKnoten(null,null);
  12.     private StringKnoten top = kopf;
  13.     /**
  14.      * Konstruktor für Objekte der Klasse StringStackImpl
  15.      */
  16.     public StringStackImpl()
  17.     {
  18.     }
  19.  
  20.     public void push(String s){
  21.         if(s==null){
  22.             throw new IllegalArgumentException();
  23.         }
  24.         StringKnoten knoten = new StringKnoten(s,top);
  25.         top = knoten;
  26.         laenge++;
  27.     }
  28.  
  29.     /**
  30.      * Diese Operation liefert true, wenn der Stack keinen String enthält,
  31.      * false sonst.
  32.      */
  33.     public boolean isEmpty(){
  34.         return laenge==0;
  35.     }
  36.  
  37.     /**
  38.      * Diese Operation liefert den obersten String als Ergebnis, ohne
  39.      * ihn vom Stack zu entfernen.
  40.      * Diese Operation darf nur aufgerufen werden, wenn isEmpty() false liefert,
  41.      * ansonsten wird eine IllegalStateException geworfen.
  42.      */
  43.     public String top(){
  44.         if(isEmpty()){
  45.             throw new IllegalStateException();
  46.         }
  47.         return top.gibInhalt();
  48.     }
  49.  
  50.     /**
  51.      * Diese Operation nimmt den obersten String vom Stack herunter
  52.      * und liefert ihn als Ergebnis.
  53.      * Diese Operation darf nur aufgerufen werden, wenn isEmpty() false liefert,
  54.      * ansonsten wird eine IllegalStateException geworfen.
  55.      */
  56.     public String pop(){
  57.         if(isEmpty()){
  58.             throw new IllegalStateException();
  59.         }
  60.         String inhalt = top.gibInhalt();
  61.         top=top.gibNachfolger();
  62.         laenge--;
  63.         return inhalt;
  64.     }
  65. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement