G
Guest
Gast
Ich habe verschachtelte HashMaps, und blicke so langsam nicht mehr durch, wie ich da was aufrufen kann :>
Es gibt Objekte, von denen ich Methoden aufrufen will. Diese Objekte sind über eine HashMap erreichbar. Diese HashMap gibt es aber auch mehrfach, und diese HashMaps (jeweils mit Objekten dran) sind auch über eine HashMap erreichbar. Jetzt möchte ich eine Methode eines Objekts aufrufen. Folgender Code funktioniert:
Das Problem ist der Teil in der zweiten Schleife: ich will nicht erst temp zuweisen, danach temp_info zuweisen und dann get_anzahl aufrufen, sondern eigentlich alles direkt und auf einmal erledigen. Leider hagelt es dann Fehlermeldungen, bzw. ich habe keine Ahnung, wie ich das machen soll.
Also:
Wie kann ich diesen Umweg abkürzen? ???:L
StatistikInfo sind übrigens die Objekte mit den Methoden...
Es gibt Objekte, von denen ich Methoden aufrufen will. Diese Objekte sind über eine HashMap erreichbar. Diese HashMap gibt es aber auch mehrfach, und diese HashMaps (jeweils mit Objekten dran) sind auch über eine HashMap erreichbar. Jetzt möchte ich eine Methode eines Objekts aufrufen. Folgender Code funktioniert:
Code:
Object[] temp_massnahmen;
Object[] temp_fehler;
StatistikInfo temp_info;
HashMap temp;
System.out.println("Aktueller Inhalt der Statistikdatei:\r");
temp_massnahmen = alle_massnahmen.keySet().toArray();
temp_fehler = ((HashMap) alle_massnahmen.get(temp_massnahmen[0])).keySet().toArray();
for(int i = 0;i <= 2;i++){
System.out.println("\n"+temp_massnahmen[i]);
for (int j = 0;j <= 3;j++){
temp = (HashMap) alle_massnahmen.get(temp_massnahmen[i]);
temp_info = (StatistikInfo) temp.get(temp_fehler[j]);
System.out.print("\n"+temp_fehler[i]+"\t"+temp_info.get_anzahl());
}
}
Das Problem ist der Teil in der zweiten Schleife: ich will nicht erst temp zuweisen, danach temp_info zuweisen und dann get_anzahl aufrufen, sondern eigentlich alles direkt und auf einmal erledigen. Leider hagelt es dann Fehlermeldungen, bzw. ich habe keine Ahnung, wie ich das machen soll.
Also:
Code:
temp = (HashMap) alle_massnahmen.get(temp_massnahmen[i]);
temp_info = (StatistikInfo) temp.get(temp_fehler[j]);
System.out.print("\n"+temp_fehler[i]+"\t"+temp_info.get_anzahl());
Wie kann ich diesen Umweg abkürzen? ???:L
StatistikInfo sind übrigens die Objekte mit den Methoden...