Hallo,
mein Adressbuchprogamm entwickelt sich prächtig.
Momentan ist es so, dass ich meine Adressen in einem Vektor speichere.
Ich habe eine Suchfunktion geschrieben, die mir die Adressen im Vektor auf einen Namen hin überprüft.
Mein Problem ist nun folgendes, dass ich bei zwei gleichen namen immer nur den letzten angezeigt bekomme. ich hab keine ahnung, wie ich das richtig machen könnte. er soll mir dann ja alle anzeigen:
es gibt folgende adressen:
Name Vorname PLZ Ort
name1 vorname1 plz1 ort1
name1 vorname2 plz2 ort2
name3 vorname3 plz3 ort3
Die Straße und Hausnummer hab ich bewusst weggelassen.
So ungefähr sieht meine funktion aus. das ganze funktioniert mit einer forschleife. jedes element meines vektors wird auf inhalt des namens geprüft. ist er enthalten wird die adresse tmp zugewiesen. am ende des programms wird tmp übergeben. so. wenn jetzt mehrere gefunden werden, wird tmp jedesmal überschreiben wenn in der forschleife ein weiterer datensatz gefunden wurde. wie kann ich dieses problem umgehen? ich will, dass alle angezeigt werden.
ich hoffe ich hab mich korrekt ausgedrückt.
javanaggi
mein Adressbuchprogamm entwickelt sich prächtig.
Momentan ist es so, dass ich meine Adressen in einem Vektor speichere.
Ich habe eine Suchfunktion geschrieben, die mir die Adressen im Vektor auf einen Namen hin überprüft.
Mein Problem ist nun folgendes, dass ich bei zwei gleichen namen immer nur den letzten angezeigt bekomme. ich hab keine ahnung, wie ich das richtig machen könnte. er soll mir dann ja alle anzeigen:
es gibt folgende adressen:
Name Vorname PLZ Ort
name1 vorname1 plz1 ort1
name1 vorname2 plz2 ort2
name3 vorname3 plz3 ort3
Die Straße und Hausnummer hab ich bewusst weggelassen.
Code:
public Address search(String[] suchen)
{
//wenn ein Datensatz passend zum eingegebenem namen gefunden wurde
//wird er an eine temporäre adresse übergeben
Address tmp=new Address();
//wenn gefunden:
tmp=ad;
//(ad ist die gefunde adresse mit dem passendem namen)
return tmp;
}
So ungefähr sieht meine funktion aus. das ganze funktioniert mit einer forschleife. jedes element meines vektors wird auf inhalt des namens geprüft. ist er enthalten wird die adresse tmp zugewiesen. am ende des programms wird tmp übergeben. so. wenn jetzt mehrere gefunden werden, wird tmp jedesmal überschreiben wenn in der forschleife ein weiterer datensatz gefunden wurde. wie kann ich dieses problem umgehen? ich will, dass alle angezeigt werden.
ich hoffe ich hab mich korrekt ausgedrückt.
javanaggi