Wie um zu überprüfen, ob eine Karte hat doppelte Schlüssel?

Ok also hier ist was ich zu tun habe:

Split der übergebenen List in einzelne Linien, und teilen Sie Sie dann die Zeilen mit einem Trennzeichen und fügen diese Teile zu einem Map.

Mein code:

public GrammarSolver(List<String> rules) {
    if(rules == null || rules.size() == 0) {
        throw new IllegalArgumentException();
    }
    Map<String, String> rulesMap = new HashMap<String, String>();
    Iterator<String> i = rules.iterator();
    while(i.hasNext()) {
        String rule = i.next(); //store a line from 'rules' List
        String[] parts = rule.split("::="); //split the line into non-terminal and terminal
        rulesMap.put(parts[0], parts[1]); //Put the two parts into the map
    }
    //TODO: exception when duplicate key in map
}

Alles einwandfrei funktioniert, aber jetzt ist meine Aufgabe sagt, dass ich muss eine exception werfen, wenn der Schlüssel jede Zeile wird dupliziert (tritt mehr als einmal).

Aus, was ich verstehe, der Schlüssel kann nur einzigartig sein, so was vermisse ich hier?

InformationsquelleAutor None | 2013-01-28
Schreibe einen Kommentar