# ArrayList - Variableninhalt als ArrayName



## der_heini (25. Januar 2008)

Hallo,
ich hoffe ich bin hier richtig! Ich hab schon das komplette Internet nach folgender
Frage durchforstet aber leider nix gefunden:

Wie kann ich bspw. einer ArrayList einen dynamischen Namen zuweisen. Also z.B.
automatisch in einer Schleife ArrayList_01 bis ArrayList_10 erstellen... 

Oder noch besser einen Variableninhalt als Array-Namen nutzen...

string sArrayName = "Array01";
ArrayList sArrayName = New ArrayList();

Hoffentlich könnt ihr mir helfen...bin Anfänger!

DANKE!

der_Heini


----------



## TheBodo (25. Januar 2008)

Hi du,

ich wüsste nicht, dass das geht!

Du könntest aber ne Hashtable nehmen (aus java.util)!

Da kannst du dann generische Datentypen verwenden.

z.B. so:


```
import java.util.Hashtable;

Class Bsp {

    public static void main(String[] args) {
        Hashtable hash = new Hashtable<String, Integer[]>();
        hash.put("Anzahl", {2, 3, 4, 5});
        for (int i = 0; i < hash.get("Anzahl").lenght; i++) {
            System.out.println(hash.get("Anzahl")[i]);
        }
    }

}
```

das könnte gehen aber sonst.. ka!


----------



## TheJadix (26. Januar 2008)

Hallo,

jetzt bin ich mal neugierig !

Was willst du damit bezwecken ? ? 

Evtl. versteckt sich hinter der Frage ein revoulutionäres Prinzip !
Ich erkenne nur keins 

Gruß JAdix


----------



## Bheliaz (26. Januar 2008)

Hi,

Ob's jetzt Sinn macht oder nicht ....

Du könntest deine ArrayLists doch einfach in ein Array packen und dann so ansprechen.


```
ArrayList[] arrays = new ArrayList[100];
        arrays[0] = new ArrayList();
        arrays[0].add("Erster Testeintrag");
```
In dem Fall hättest du auch deine ArrayLists nummeriert und könntest sie aufrufen ...
Das mit den Variablennamen geht fürchte ich nicht und würde meiner Meinung nach auch keinen wirklichen Mehrwert bringen.

lg Andi


----------



## der_heini (26. Januar 2008)

Hallo,

ich möchte folgendes machen: (hoffenlich liest das überhaupt noch jemand....)

Zwei kommagetrennte Listen (.csv) auslesen und miteinander vergleichen.
Die eine Liste sieht in etwa so aus:
Vorname1;Nachname1;Alter1
Vorname2;Nachname2;Alter2
Vorname3;Nachname3;Alter3
Vorname4;Nachname4;Alter4
Vorname5;Nachname5;Alter5
Vorname6;Nachname6;Alter6
Vorname7;Nachname7;Alter7
Vorname8;Nachname8;Alter8
Vorname9;Nachname9;Alter9
Vorname10;Nachname10;Alter10


Die andere Liste in etwa so:
Nachname2;Vorname2;Straße2;Hausnummer2;Ort2;Beruf2;Hobby2
Nachname4;Vorname4;Straße4;Hausnummer4;Ort4;Beruf4;Hobby4
Nachname5;Vorname5;Straße5;Hausnummer5;Ort5;Beruf5;Hobby5
Nachname7;Vorname7;Straße7;Hausnummer7;Ort7;Beruf7;Hobby7
Nachname3;Vorname3;Straße3;Hausnummer3;Ort3;Beruf3;Hobby3
Nachname1;Vorname1;Straße1;Hausnummer1;Ort1;Beruf1;Hobby1
Nachname6;Vorname6;Straße6;Hausnummer6;Ort6;Beruf6;Hobby6

Die Listen Unterscheiden sich nicht nur von der Gesamt-Anzahl der Einträge und der Reihenfolge. Ich weiß auch vorher nicht wie viele Einträge es überhaupt gibt.
Es kann auch sein dass es Einträge aus Liste 1 in Liste 2 nicht gibt und umgekehrt.
Ich möchte jeweils die Vor- und Nachnamen vergleichen und alles zusammenfassen.
Das Ergebnis sollte eine Liste sein in der alle Einträge zusammen passen....und Einträge
die nicht in beiden Listen vorhanden sind sollten, wie auch immer, markiert werden.

Und diese Aufgabe möchte ich über Array’s lösen. Das bedeutet beide Listen einlesen und
die Einträge jeweils in Arraylisten schreiben, um dann die Arrays miteinander zu vergleichen.
Die Einträge sollten Zeilenweise in einzelne Arrays geschrieben werden...
Array_Datei1_Zeile1 [Vorname, Nachname, Alter]
Array_Datei1_Zeile2 [Vorname, Nachname, Alter]
Array_Datei1_Zeile3 [Vorname, Nachname, Alter]
Array_Datei1_Zeile4 [Vorname, Nachname, Alter]
....keine Ahnung wie viele noch kommen...

Array_Datei2_Zeile1 [Vorname, Nachname, Alter]
Array_Datei2_Zeile2 [Vorname, Nachname, Alter]
Array_Datei2_Zeile3 [Vorname, Nachname, Alter]
Array_Datei2_Zeile4 [Vorname, Nachname, Alter]
....keine Ahnung wie viele noch kommen...

Und am Ende kommt dann....
If (Array_Datei1_Zeile1.get(1) == Array_Datei2_Zeile1.get(1))
….

Und das soll dann eben in einer Schleife alles durchsucht werden….

DANKE


----------



## zeja (26. Januar 2008)

Erstell dir ein oder zwei eigene Klasse:

```
public class PersonAge {
public String vorname;
public String nachname;
public String alter
}
```


```
public class PersonInfo {

public String nachname;
public String vorname;
public String straße;
public String hausnummer;
public String ort;
public String beruf;
public String hobby;

}
```

Dann erstellt du dir beim einlesen deiner Dateien entsprechend Objekte davon und packst diese in zwei verschiedene ArrayListen. Dann kannst du sie ganz einfach vergleichen.


----------



## der_heini (26. Januar 2008)

Danke Zeja ich werde es später dann gleich ausprobieren,
dass sieht ja mal ganz gut aus.
Grüße!


----------

