Java Liste mit TextArea ausgeben lassen

Es geht doch um diese Liste, oder?
Code:
  public void actionPerformed (ActionEvent ae)
  {
    ...
    Vector<Object> liste = new Vector<Object>();
    ...
  }
Die befüllst du zwar, wenn man auf btAdresseeintragen klickt, allerdings hat das keine Relevanz wenn auf btIndexdelet geklickt wird.

Da die Liste dann auch einen Sinn zu haben scheint, solltest du, wie von soaras angemerkt, auch Generics korrekt nutzen. Dann wird dir der Compiler (oder IDE) auf die Finger klopfen, anstatt das du eine ClassCastException bekommst.
 
In Zeile 76 vergleichst du mit dem == Operator, müsste aber per equals verglichen werden, da du sonst nur Murks raus bekommst.
 
Weil man Objekte nicht mit == auf Gleichheit prüft, das geht mit equals (o.equals(tmp)).
== prüft nur ob sie auf den gleichen Speicher zeigen, interessiert sich aber nicht von was diese Objekte abstammen (instanceof).
 
Zuletzt bearbeitet:
@blck90: wenn es hier um Strings o.Ä. gehen würde, würde ich dir zustimmen. Aber in diesem Fall reicht es tatsächlich aus, nur die Referenz zu prüfen, da getSource() genau das Objekt (bzw. die Referenz) liefert, an dem man sich zuvor per addActionlistener registriert hat (Zeile 56). Ein Vergleich mit equals wäre daher übertrieben.
 
@black90: Stimmt schon, nur geht es hier um eine spezifische Instanz und dann ist == das Mittel der Wahl. equals() wäre nicht falsch, nur hier wirklich nicht notwendig.
 
Wer weiß was er tut, wird schon das Richtige wählen. Wer es nicht weiß, dem kann man ruhig zu equals raten. In diesem Fall egal, da es bis auf Object#equals durchschlägt.
Code:
    public boolean equals(Object obj) {
        return (this == obj);
    }
 

Ähnliche Themen

Zurück
Oben