HashMaps in List?

Shoox

Mitglied
Hallo an alle,
ich habe ein Problem mit HashMaps und xml. Vorab muss ich sagen, dass ich noch wenig bis gar keine Erfahrungen weder mit xml noch mit HashMaps habe ^^
Also, über ein .xml file bekomme ich eine unbekannte Anzahl an products. Diese products lese ich aus und speichere diese in eine ArrayList ( nodeName + trennzeichen + nodeValue ). Das klappt ohne Probleme für jegliche Tiefe. Danach versuche ich diese list in eine HashMap zu speichern ( nodeName = key ). So, hier kommt das Problem:
Da keine keys doppelt vorkommen dürfen will ich je product eine eigene HashMap machen. Hier ist mal mein code:

Java:
    public ArrayList getListOfHashMaps() {
        //enthält die xml Daten (name+trennzeichen+value)
        ArrayList xmlList = getList();
        ArrayList hashlist = new ArrayList();
        boolean check = false;
        HashMap map = new HashMap();
        for (int i = 0; i < xmlList.size() - 1; i++){
            String[] datensatz = xmlList.get(i).toString().split(trennzeichen);
            String key = datensatz[0];
            String value = datensatz[1];
            // Um unnütze Informationen im header auszuschließen
            if (key.equals(startNode) || check){
                check = true;
                if (key.equals(startNode)){}else{
                    map.put(key, value);
                }
                if ((xmlList.get(i + 1).toString().split(trennzeichen)[0]).equals(startNode)){
                    System.out.println("Map size: " + map.size());
                    hashlist.add(map);
                    System.out.println("Hashlist: "+hashlist.size());
                    map.clear();
                    System.out.println("Map: "+hashlist.get(hashlist.size()-1).toString());
                }
            }
        }
        return hashlist;
    }

Meine Ausgabe in der console ist:
Map size: 29
Hashlist: 1
Map: {}
Map size: 29
Hashlist: 2
Map: {}

Kann ich keine HashMaps in eine ArrayList speichern? Welche Art von list kann das, oder muss ich ein HashMap[] machen? Wenn ich ein HashMap[] machen muss, wie mach ich des mit der Größe des arrays?
Vielen Dank im vorraus.
peace, Shoox
 

Marco13

Top Contributor
Es wird da immer dieselbe Hashmap verwendet (und gecleart). Statt
map.clear();
must du
map = new HashMap();
schreiben.

Ansonsten
Java:
if (key.equals(startNode)){}else{
    map.put(key, value);
}
->
Java:
if (!key.equals(startNode)){
    map.put(key, value);
}

Und schau dir mal an, was man unter "Generics" und "Gegen das Interface Programmieren" versteht.
 

fastjack

Top Contributor
Nachdem Anfügen leerst Du die bereits angefügte Map, du sollst aber eine neue erstellen.

Ungefähr so:

Liste L mit Maps erstellen
Schleife Begin
Map M neu erzeugen und füllen
M an L anfügen
Schleife End
Fertig
 

Shoox

Mitglied
Danke für die schnellen Antworten ...
Wegen dem if/else - das ist noch vom testen übrig gewesen ^^ und generics ... ich würde sie gern verwenden aber unser Unternehmen programmiert noch 1.4 ^^
jedenfalls, danke für die schnellen Antworten. jz funktionierts =)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
I Fehler bei HashMaps Darstellung Allgemeine Java-Themen 10
M HashMaps: Wert erweitern Allgemeine Java-Themen 3
X Collections Hashmaps vergleichen Allgemeine Java-Themen 23
H 2D Array aus HashMaps Allgemeine Java-Themen 7
Pastafari Iterator über nested HashMaps Allgemeine Java-Themen 7
S Frage zu mehrfach indizierten Hashmaps Allgemeine Java-Themen 4
J zwei HashMaps vereinen Allgemeine Java-Themen 3
D Mehrdimensionale HashMaps Allgemeine Java-Themen 6
J immutable HashMaps und clone() Allgemeine Java-Themen 3
W HashMaps - Suchmöglichkeit - Wildcarts? Allgemeine Java-Themen 5
8u3631984 Frage Performance bei Linked List und Array List Allgemeine Java-Themen 5
Rakshan Reading through list of objects Allgemeine Java-Themen 8
L Unterschied zwischen List und LinkedList implementierung? Allgemeine Java-Themen 15
Monokuma String List nach Zahlen und Worten sortieren Allgemeine Java-Themen 9
W Enumeration ein Array/List als Eigenschaft mitgeben - warum geht das nicht? Allgemeine Java-Themen 0
X Collections Gibt es eine Klasse welche die Vorteile von List und HashMap vereint, aber konstante Laufzeit (O(1)) hat in Java? Allgemeine Java-Themen 4
W Collections Suche etwas Sorted-List-Artiges...hat jemand eine Idee? Allgemeine Java-Themen 13
M List -Tableview-Javafx-Vererbung Allgemeine Java-Themen 35
R convert 2d array list to 2d array Allgemeine Java-Themen 1
B List<Integer> ist List<Double> ? Allgemeine Java-Themen 6
L Applet Problem "security: Trusted libraries list file not found" ? Allgemeine Java-Themen 7
G Neues Objekt aus List<JsonObject> mit Stream Allgemeine Java-Themen 4
J Array-List Bubble-Sort Allgemeine Java-Themen 12
U javax.mail.Folder.list() zeigt nicht alle Ordner Allgemeine Java-Themen 5
Hacer List<? super E> Allgemeine Java-Themen 10
C Objekte in Array List speichern? Allgemeine Java-Themen 1
P List<Type> Konvertieren in List<List<Type>> Allgemeine Java-Themen 3
P Sorted List o.ä. Allgemeine Java-Themen 2
M Erste Schritte List<> unbekannt?? Allgemeine Java-Themen 8
M List casting error Allgemeine Java-Themen 3
Messoras List zeigt nur das letzte Element an Allgemeine Java-Themen 14
K Collections Collection<> mit List<String> abgleichen? Allgemeine Java-Themen 10
A List<String> auf doppelte Einträge überprüfen Allgemeine Java-Themen 4
U EJB Entity mit List Problem Allgemeine Java-Themen 2
? Objects aus List aussortieren Allgemeine Java-Themen 9
B List Pointer zurücksetzen Allgemeine Java-Themen 10
J Elemente zu einer List hinzufügen? Allgemeine Java-Themen 9
T Liste mit GregorianCalendar-Objekten in List einlesen, mit Collection sortieren und ausgeben Allgemeine Java-Themen 3
N List auf null prüfen Allgemeine Java-Themen 2
G List<Person> sortieren Allgemeine Java-Themen 6
A Probleme mit ConcurrentHashMap und List Allgemeine Java-Themen 3
C Komisches Verhalten zwischen Set und List bei contains Allgemeine Java-Themen 6
N Inverted index / inverted list Allgemeine Java-Themen 2
X Eine Map mit X -> List<Y>? Allgemeine Java-Themen 8
B Frage zu Interface und List Allgemeine Java-Themen 4
H List wird nicht richtig gefüllt Allgemeine Java-Themen 6
Z aus private List<???> list eintrag löschen Allgemeine Java-Themen 4
L List <Hauser> in Combobox einfügen Allgemeine Java-Themen 5
isowiz java.util.List: Sortierung nicht nach bestimmten Attribut? Allgemeine Java-Themen 4
K von List getSelected auf ResultSet Datenbank löschen Allgemeine Java-Themen 2
E Speicher frei machen (List) Allgemeine Java-Themen 9
K List in Teillisten zerlegen Allgemeine Java-Themen 2
B Probleme mit awt.List in Chatprogramm Allgemeine Java-Themen 14
MQue List<String> aus List<Object> generieren Allgemeine Java-Themen 2
B List = ArrayList ? Allgemeine Java-Themen 12
N List<? implements "Interface"> geht nicht Allgemeine Java-Themen 13
G Byte- List mit einem Iterator durchlaufen Allgemeine Java-Themen 5
G Linked List zwischen zwei Threds übergeben Allgemeine Java-Themen 11
S List<Double> oder Double[] in double[] zu konvertieren Allgemeine Java-Themen 6
G Methode akzeptiert List<ParentClass> aber nicht List&l Allgemeine Java-Themen 2
G List- Einträge löschen Allgemeine Java-Themen 3
G java.util.List klonen Allgemeine Java-Themen 17
S Collections.binarySearch(list,"a") Allgemeine Java-Themen 7
K Bound mismatch: The generic method sort(List<T>) of ty Allgemeine Java-Themen 4
K "Too many open files" bei Property List Allgemeine Java-Themen 5
P List in Hashmap schreiben Allgemeine Java-Themen 5
J linked list per reverse() "umdrehen" Allgemeine Java-Themen 11
P java.util.List - Typ überschreiben Allgemeine Java-Themen 9
G Arraylist statt List - Sehr schlimm? Allgemeine Java-Themen 8
G List mit selbstdefinierten Objekten sortieren Allgemeine Java-Themen 2
M Datenstrukrue, List<Map<Integer, Map<String, . Allgemeine Java-Themen 2
F List<String> zu byte[] Allgemeine Java-Themen 7
G Map oder List mit festgelegter Reihenfolge Allgemeine Java-Themen 4
M Pendant zu list() und array() aus PHP in Java gegeben? Allgemeine Java-Themen 5
J Problem mit List Allgemeine Java-Themen 2
byte Generic Type einer List zur Laufzeit rausfinden? Allgemeine Java-Themen 4
S Generics List Allgemeine Java-Themen 3
G Inhalt einer Textdatei in eine AWT List schreiben Allgemeine Java-Themen 3
C access control list in java Allgemeine Java-Themen 7
T List.isEmpty() klappt nicht?!?!? Allgemeine Java-Themen 5

Ähnliche Java Themen

Neue Themen


Oben