ArrayList

r_legend

Grünschnabel
Ich schreib ein Objekt in ein ArrayList in einer while schleife so das mehrer Objekte gleichen Namens in das ArrayList kommen
Code:
ArrayList a1 = new ArrayList();
adressbuch eintrag = new adressbuch();

eintrag.seteintrag(Nachname,Vorname,EmailAdresse);
a1.Add (eintrag);

Wie bekomm ich diese Objekte wieder aus dem ArrayList raus?
 

Texaner

Erfahrenes Mitglied
Moin,

wie willst du sie Anzeigen lassen?

In einem DropDown Listenelement?
Code:
DeinDropDown.DataSource = a1;
DeinDropDown.DataBind;
Oder habe ich dich jetzt falsch verstanden?
Willst du nur die doppelten raus haben?

Dann müsstes du mit in einer Schleife mit Compare vergleichen.
 

Saber

Erfahrenes Mitglied
Original geschrieben von r_legend
Ich schreib ein Objekt in ein ArrayList in einer while schleife so das mehrer Objekte gleichen Namens in das ArrayList kommen
Code:
ArrayList a1 = new ArrayList();
adressbuch eintrag = new adressbuch();

eintrag.seteintrag(Nachname,Vorname,EmailAdresse);
a1.Add (eintrag);


Wie bekomm ich diese Objekte wieder aus dem ArrayList raus?

Ich glaube Du meinst, wie Du auf die Objekte innerhalb der ArrayList wieder zugreifen kannst, oder? Am einfachsten gehts über einen Index. Selbstverständlich kann man Konstrukte wie eine foreach-Schleife verwenden.

Beispiel (über einen Index):
Code:
ArrayList al = new ArrayList();

al.Add("1");
al.Add("2");

MessageBox.Show(this, al[0].ToString());

Quasi einfach nur mittels eckiger Klammern [ ] einen Index hinter das ArrayList-Objekt schreiben. :)
 

r_legend

Grünschnabel
Saber hat es erfasst.
Es geht also nicht das ich einem element eines ArrayList wieder einem Objekt zuweisen kann? Da in dem Objekt was ich speichere daten sind wie Name, Vorname und EmailAdresse. Da gibs noch ne Methode, die die Daten wieder ausgibt. So das ich einfach noch ein objekte erzeuge wie z.B.:
Code:
adressbuch ausgabe = new adressbuch();

ausgabe = a1[0]
 

Saber

Erfahrenes Mitglied
Doch doch, sicher geht das. Wenn Du Dir meinen Beispielcode genau ansiehst, dann stellst Du fest, dann ich im Grunde in das ArrayList einen String reinpumpe und anschließend wieder raushole. Ob nun String oder obs Deine eigene Klasse ist spielt dabei keine Rolle.
Code:
ArrayList a1 = new ArrayList();
adressbuch eintrag = new adressbuch();

eintrag.seteintrag(Nachname,Vorname,EmailAdresse);
a1.Add (eintrag);

adressbuch newEintrag = new adressbuch();
newEintrag = a1[0];
// Evtl. muss man vorher noch casten
newEintrag = (adressbuch)a1[0];

Sollte eigentlich funktionieren. :)