ArrayList indexOF - Funktion

nerdberg

Grünschnabel
Hallo allerseits!
Ich bin neu hier. Da ich hin und wieder Fragen zu allen möglichen Themen der Informatik habe und da sich dieses Forum mit einem ziemlich großen Spektrum dieser Thematik befasst, glaube ich hier richtig zu sein?!

Nun zu meinen aktuellen Problem, is glaub ich eher ein grundlegendes Verständnissproblem:

Also ich habe eine Klasse Person mit Vorname und Nachname als private Strings.
Dann habe ich eine ArrayList in die Personen kommen...
Code:
ArrayList<Person> personenListe = new ArrayList<Person>();
Nun meine erste Frage: Wie kann ich mit der indexOf Methode zum Beispiel nach der Position eines Vornames einer Person suchen? bzw geht das überhaupt?
Und meine zweite Frage: Sagen wir, ich fülle die Arrayliste in einer Schleife und hab eine temporäre Person die ich in jedem Schleifendurchlauf neu befülle und dann in die Liste hinzufüge. Wie könnte ich die Personen dann noch unterscheiden, ausser von ihrem Index?

thx

edit: Hat sich eigentlich erledigt. Also zu Frage eins: Schäz mal das geht so nicht.
Und zu Frage 2: Ich geh die Liste einfach wie beim einlesen auch beim auslesen in der Schleife durch und vergleich dabei jeweils...
 
Zuletzt bearbeitet:

Oliver Gierke

Erfahrenes Mitglied
Zu zweitens:

wenn du immer das geleiche Person Objekt veränderst, überschreibst du jedes mal die des Vorgängers. Die Liste speichert Referenzen auf ein Objekt. Du fügst damit also mit jedem Schleifendurchlauf das gleiche Objekt (wenn auch mit verändertem Inhalt) zur Liste hinzu.

Gruß
Ollie
 

nerdberg

Grünschnabel
yo, das hab ich mir eh auch gedacht, aber für meine zwecke reicht es...
wie könnt ichs den sonst noch machen:confused: Nachnamen als Objektnamen? Personen- Array?
 

Oliver Gierke

Erfahrenes Mitglied
Einfach in der Schleife für jede Person "new Person()" machen. Dann hast du immer eine neue Instanz.

Gruß
Ollie