Java ausgabe

Flooow

Mitglied
Guten abend =)

Ich hab was Programmiert, was nach der Eingabe von Daten, in einer Liste nach diesen sucht und diese eigentlich ausgeben sollte, jedoch kommt einfach keine Ausgabe.
Habt ihr ne Ahnung wo das dran liegen könnte?


Ausgabefeld
Code:
    ergebnis.setBounds(8, 120, 400, 200);
       ergebnis.setLineWrap(true);
    sbrText = new JScrollPane(ergebnis);
    sbrText.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    ergebnis.setLineWrap(true);
    ergebnis.setEditable(true);
    ergebnis.setVisible(true);
    cp.add(ergebnis);

Suchen is das Eingabefeld

Suche ..

Code:
public static Vector auswerten(String suchen)
  {
    String tele1, tele2;  //suche muss von Feld gelesen werden Err Handling!
    CSVReader csv_source = new CSVReader();
    Vector z = new Vector();    //Vector für die Ausgabe der Suche
    z = csv_source.getVector();
    Enumeration e = z.elements();
    while (e.hasMoreElements())
    {
      String[] merker = (String[])e.nextElement();
      tele1 = merker[0];
      tele2 = merker[1];
      if (tele1.equals(suchen) | tele2.equals(suchen))
      {
        for(int zaehler=0; zaehler<merker.length;zaehler++)
        {
          z.add(merker);
        }
        System.out.println("");
      }
    }
    return z;
  }

vielen dank =)
 
Zuletzt bearbeitet:
Also mich irritiert vor allem dieser Teil:

Java:
    CSVReader csv_source = new CSVReader();
    Vector z = new Vector();    //Vector für die Ausgabe der Suche
    z = csv_source.getVector();

Also was soll das Anlegen und direkte neu belegen von z in zeile 5 und 6?
Der Vector den du in Zeile 5 erzeugst wird nirgends verwendet. Die Zeile 5 könntest du also wegschmeißen.
Und was soll der Reader lesen. Weiß die Klasse CSVReader automatisch von wo sie Daten lesen soll?

Weiterhin, wenn die Klasse Reader nicht weiß, was sie lesen soll, wird sie auch nichts lesen, dann wird der Vector keine Daten enthalten und dementsprechend die Enumeration auch nicht, was dann auch sofort erklärt warum die Bedingung für die Schleife direkt false ist.
 
Bei solchen Problemen kann man ganz leicht debuggen. Entweder mit dem Debugger oder mit System.out's
Schau bei
Java:
    Enumeration e = z.elements();
    while (e.hasMoreElements())
- ob e ueberhaupt Inhalt hat, bzw ob er in die while kommt
- finde heraus was in 'merker' steht und ob es das richtige ist
- dann schauen ob er ins if kommt
- ... usw
du kannst natuerlich auch anfangen zu schauen was er bei z returned
 
Zurück