Advertisement
Guest User

Untitled

a guest
Nov 11th, 2011
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.43 KB | None | 0 0
  1. /**************************** BackListe.java *******************************/
  2. /**
  3. * Eine BackListe erweitert den ADT Liste um die Methode
  4. * <tt>public void back();</tt>
  5. *
  6. * @version 15.12.2007
  7. *
  8. * @author Patrick Fox (pfox@uos.de)
  9. * @author Dorothee Langfeld (dlangfel@uos.de)
  10. */
  11. public class BackListe extends VerweisListe {
  12.  
  13. /**
  14. * Macht das Element _vor_ dem aktuellen zum aktuellen. Wenn der Rueckschritt
  15. * nicht moeglich war, wir eine ListenException geworfen.
  16. *
  17. * @throws ListenException, falls nicht Rueckschritt geklappt hat
  18. */
  19. public void back() throws ListenException {
  20. if (super.empty()) throw new ListenException("Liste ist leer");
  21. Object hilf = super.elem(); // Aktuelles Element
  22. int hilfpos = 0; // Position in der Liste
  23. super.reset(); // Zum Listenanfang
  24. while (hilf != super.elem()) { // Element gleich hilf?
  25. hilfpos++; // Position erhoehen
  26. super.advance(); // Naechstes Element
  27. }
  28. if (hilfpos == 0) // Schleife nicht durchlaufen
  29. throw new ListenException("Liste war auf Startposition");
  30. super.reset(); // Auf Anfang springen
  31. for(int i = 0; i <= hilfpos; i++) // Auf vorhergehenden Knoten
  32. super.advance();
  33. }
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement