# ArrayList aus Verschiedenen klasse füllen



## gberisha1212 (7. Jan 2013)

Hi,

Ich muss für ein Uni Aufgabenblatt, eine Medien Datenbank erstellen (befüllt mit Personen Informationen - Vorname, Name, Video-Datei, Audio-Datei).

Dazu wollte ich zuerst eine Container klasse erstellen, in die ich durch Benutzung der ArrayList (aus Java.util.ArrayList) Informationen einfülle.
Dass einfüllen selbst aber aus einer anderen klasse, "Informationen" machen.

Frage : Wie ist es mir möglich durch einer separaten klasse, die ArrayList zu füllen?

Vielen dank im voraus

Grüße


----------



## Timothy Truckle (7. Jan 2013)

gberisha1212 hat gesagt.:


> Frage : Wie ist es mir möglich durch einer separaten klasse, die ArrayList zu füllen?


Indem Du es programmierst.
Irgend eine _konkrete_ Frage?

bye
TT


----------



## SlaterB (7. Jan 2013)

vielleicht hilft die Vorstellung, dass man eine ArrayList selber auch gar nicht befüllen kann,
eine ArrayList enthält selber intern ein Array, in dieses müssen die Daten rein,
wie macht man das nun, wie geht man mit einer ArrayList um?

immer sind es dieselben Wege:
A) X übergibt an Y die Daten, damit Y sie intern einfügt oder vielleicht noch an Z weiterreicht
B) X holt sich aus Y ein Objekt Z, um dann mit Z vor derselben Frage zu stehen
C) X oder Y oder wer auch immer kommt letztlich an ein Array oder eine Instanzvariable dran, da kann man dann speichern

ok, klingt grad nicht so oscarverdächtig, verwirrt vielleicht mehr als dass es hilft


----------



## nillehammer (7. Jan 2013)

Schreibe in die Containerklasse eine public Methode namens _addInfo_, _addPerson_ oder so. Diese muss einen Parameter des gewünschten Typs haben und ruft _add_ auf der Liste auf.


----------



## gberisha1212 (8. Jan 2013)

danke an alle für die Große Hilfe.

Hier bin ich gerade bei meiner Container klasse:


```
import java.util.ArrayList;

public class Container {

    public static void main(String[] args) {
    }
    ArrayList<String> Names = new ArrayList<>();

    public void addinfo(String addinfo) {
        Names.add(addinfo);
    }
}
```
Ich würde die Methode (addinfo) aber auch gerne von einer anderen klasse (Information) befüllen lassen.
und mir ist es noch nicht richtig bewusst wie ich dies mache.
Vielen dank
Grüße


----------



## SlaterB (8. Jan 2013)

> danke an alle für die Große Hilfe.

heißt also: du hast noch nichts verstanden und stellst die Frage neu..


-------

hypothetische Frage:
"hier habe ich eine Klasse ArrayList [ Code ... ] 
Ich würde die Methode (add) aber auch gerne von einer anderen klasse (Container) befüllen lassen.
und mir ist es noch nicht richtig bewusst wie ich dies mache."

komisch, dieses Problem hast du schon vollständig gelöst,
Container erstellt sich eine ArrayList und ruft add() auf, alles bestens

was ist an der gedanklichen Übertragung schwer?
genauso kann sich doch die Klasse Information einen Container-Objekt erstellen und addinfo() aufrufen?
exakt dasselbe Problem zunächst

danach kann man noch darüber nachdenken, dass Information vielleicht nicht selber Container erstellen sollte 
sondern ein vorhandenes Objekt von woanders übernimmt?
das geht mit Parametern im Konstruktor oder set-Methode


----------

