schmitzm.lang
Class PushbackStringTokenizer

java.lang.Object
  extended by java.util.StringTokenizer
      extended by schmitzm.lang.PushbackStringTokenizer
All Implemented Interfaces:
Enumeration<Object>

public class PushbackStringTokenizer
extends StringTokenizer

Diese Klasse erweitert den StringTokenizer um eine PushBack-Funktion, mit der ein Token zurueck auf den Tokenizer gelegt werden kann.
Bemerkung:
Solange noch Token im Pushback-Speicher liegen, liefert die Methode nextToken(String) eines diese Token, ungeachtet von den dieser Methode uebergebenen Delimitern!

Version:
1.0
Author:
Martin Schmitz (University of Bonn/Germany)

Field Summary
protected  Vector<String> pushedbackTokens
          Verwaltet die zurueck gelegten Token.
protected  Vector<String> readTokens
          Verwaltet die bereits gelesenen Tokens.
 
Constructor Summary
PushbackStringTokenizer(String str)
          Erzeugt einen neuen Tokenizer.
PushbackStringTokenizer(String str, String delim)
          Erzeugt einen neuen Tokenizer.
PushbackStringTokenizer(String str, String delim, boolean returnDelims)
          Erzeugt einen neuen Tokenizer.
 
Method Summary
 int countTokens()
          Liefert die Anzahl an Token, die noch gelesen werden koennen.
 String getReadTokens()
          Liefert alle bisher gelesenen Token als Zeichenkette.
 boolean hasMoreElements()
          Liefert denselben Wert wie hasMoreTokens().
 boolean hasMoreTokens()
          Prueft, ob noch Tokens gelesen werden koennen.
 Object nextElement()
          Liefert denselben Wert wie nextToken().
 String nextToken()
          Liefert das naechste Token.
 String nextToken(String delim)
          Liefert das naechste Token.
 String pushback()
          Legt das zuletzt gelesene Token zurueck in den Tokenizer.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

readTokens

protected Vector<String> readTokens
Verwaltet die bereits gelesenen Tokens.


pushedbackTokens

protected Vector<String> pushedbackTokens
Verwaltet die zurueck gelegten Token.

Constructor Detail

PushbackStringTokenizer

public PushbackStringTokenizer(String str,
                               String delim,
                               boolean returnDelims)
Erzeugt einen neuen Tokenizer.

Parameters:
str - zu parsender String
delim - Delimiter
returnDelims - bestimmt, ob die Delimiter ebenfalls als Token zurueckgeliefert werden

PushbackStringTokenizer

public PushbackStringTokenizer(String str,
                               String delim)
Erzeugt einen neuen Tokenizer. Die Delimiter werden nicht als Token zurueckgegeben.

Parameters:
str - zu parsender String
delim - Delimiter

PushbackStringTokenizer

public PushbackStringTokenizer(String str)
Erzeugt einen neuen Tokenizer. Als Delimiter werden " \t\n\r\f" verwendet. Diese werden nicht als Token interpretiert. zurueckgegeben.

Parameters:
str - zu parsender String
Method Detail

hasMoreTokens

public boolean hasMoreTokens()
Prueft, ob noch Tokens gelesen werden koennen.

Overrides:
hasMoreTokens in class StringTokenizer

nextToken

public String nextToken()
Liefert das naechste Token.

Overrides:
nextToken in class StringTokenizer

nextToken

public String nextToken(String delim)
Liefert das naechste Token.
Diese Methode ist nur mit Bedacht zu verwenden, da sie - sofern vorhanden - das letzte mittels pushback() zurueckgelegte Token liefert, egal welcher Delimiter uebergeben wurde!!

Overrides:
nextToken in class StringTokenizer
Parameters:
delim - Delimiter fuer das naechste Token

hasMoreElements

public boolean hasMoreElements()
Liefert denselben Wert wie hasMoreTokens().

Specified by:
hasMoreElements in interface Enumeration<Object>
Overrides:
hasMoreElements in class StringTokenizer

nextElement

public Object nextElement()
Liefert denselben Wert wie nextToken().

Specified by:
nextElement in interface Enumeration<Object>
Overrides:
nextElement in class StringTokenizer

countTokens

public int countTokens()
Liefert die Anzahl an Token, die noch gelesen werden koennen.

Overrides:
countTokens in class StringTokenizer

pushback

public String pushback()
Legt das zuletzt gelesene Token zurueck in den Tokenizer.

Returns:
das zurueckgelegte Token

getReadTokens

public String getReadTokens()
Liefert alle bisher gelesenen Token als Zeichenkette. Diese Methode macht nur Sinn, wenn auch die Delimiter als Token gelesen werden.