import java.util.HashMap; import java.util.Map; /** Eigentlich nur ein Wrapper um eine Map-Instanz. Verwendet Java 1.5*/ public class VariableEvaluation { private Map map; public VariableEvaluation() { map = new HashMap (); } /** Gibt den Wert einer Variable zurueck. Vorher wird (per Assertion) geprueft, ob der Name * auch vorhanden ist. Ist dies nicht der Fall, wird das Programm abgebrochen (insofern * Assertions eingeschaltet sind). Dies ist nicht besonders elegant; eine bessere Methode * werden Sie mit "Exceptions" kennenlernen. */ public int getValuation(String varname) { assert map.containsKey(varname) : "Kann den Variablennamen " + varname + " nicht finden!"; return map.get(varname); // Autoboxing in Java 1.5 konvertiert Integer -> int } /** Gibt die Variablen-Valuation als String zurueck */ public String toString() { String ret = "", delim = ""; for (String s : map.keySet()) { ret += delim + s + " -> " + map.get(s); delim = "\n"; } return ret; } /** Fuegt eine Variablen-Valuation hinzu */ public void addValuation(String varname, int value) { map.put(varname, value); // Autoboxing in Java 1.5, hier int -> Integer } }