Vector eigenen Typs mit Daten füllen

Status
Nicht offen für weitere Antworten.
G

Guest

Gast
Hallo,

ich möchte einen Vector<Person> (vom Typ Person) mit den Daten einer Person füllen.
In der Klasse Person habe ich alle getter und setter.
Wie mache ich das?
Und wie funktioniert die ausgabe?

Danke!
 

lhein

Top Contributor
Indem du ein Person-Objekt erstellst und es in den Vector packst. So einfach ist das.
Und die Ausgabe funktioniert, in dem Du die Person aus dem Vector holst und eine passende Ausgabe-Methode aufrufst.

Anhand Deiner Fragestellung wird klar, daß dir hier einige Zusammenhänge nicht wirklich klar sind.

lr
 

L-ectron-X

Gesperrter Benutzer
Schau dir die Methoden von Vector an. Unter ihnen findest du die add()- bzw. addElement()-Methode zum Speichern von Objekten im Vector und die get()-Methode zum Auslesen von Objekten aus dem Vector.
 
M

maki

Gast
Warum Vector?

Nimm doch eine der vielen "modernen" Collections.
 

b0rsti

Aktives Mitglied
also jetzt nochmal für ganz doofe...:)

ein person objekt erstelle ich mir so, oder?

Person p = new Person();

und wie lege ich jetzt da eine person an?
 

L-ectron-X

Gesperrter Benutzer
maki hat gesagt.:
Warum Vector?

Nimm doch eine der vielen "modernen" Collections.
Nehmen wir an, du willst ein TableModel benutzen, da gibts z.B. das DefaultTableModel, welches u.a. auch Vectoren erwartet. Oder, du willst, dass das Ganze threadsicher ist, dann nimmst du auch einen Vector.
 

lhein

Top Contributor
Code:
Person p = new Person(); // das "legt eine Person an"
meinVector.add(p);  // das fügt die Person zum Vector hinzu
 
M

maki

Gast
Nehmen wir an, du willst ein TableModel benutzen, da gibts z.B. das DefaultTableModel, welches u.a. auch Vectoren erwartet. Oder, du willst, dass das Ganze threadsicher ist, dann nimmst du auch einen Vector.
Danke, das mit dem DefaultTableModel wusste ich nicht.
 

ARadauer

Top Contributor
jaja so ungefähr:

Code:
ArrayList<Person> personenListe = new ArrayList<Person>();
Person p = new Person();
personenListe.add(p);

ein person objekt erstelle ich mir so, oder?

Person p = new Person();

und wie lege ich jetzt da eine person an?

wo ist für dich der unterschied zwischen anlegen und erstellen?

vektor ist threadsicher, arraylist nicht.
arraylist ist dafür einen hauch schneller.
 

tfa

Top Contributor
L-ectron-X hat gesagt.:
maki hat gesagt.:
Warum Vector?

Nimm doch eine der vielen "modernen" Collections.
Nehmen wir an, du willst ein TableModel benutzen, da gibts z.B. das DefaultTableModel, welches auch Vectoren erwartet. Oder, du willst, dass das Ganze threadsicher ist, dann nimmst du auch einen Vector.

Dass DefaultTableModel Vector benutzt ist wirklich grauenvoll. Muss wohl am Alter dieser Klasse liegen.

Eine threadsichere Liste bekommt man z.B. auch mit
Code:
List l = Collections.synchronizedList( new ArrayList());
 

b0rsti

Aktives Mitglied
Ja genau ist für ein TableModel gedacht.
Danke!

ok noch eine andere frage:
ich möchte eine leere tabelle anzeigen und wenn etwas hineingeschrieben, nach klick eine buttons (speichern)
die daten in den vector geschrieben werden.

Bekomme bis jetzt noch keine leere Tabelle hin...?

ich zeig euch mal was ich bis jetzt habe:

Code:
public class DatenModell extends AbstractTableModel {

    
    String[] feldname = {"Anzahl Gesamt", "name", "Stimmen", "anzahl * Stimmen", "Gesamt", "Divisionsergebnis", "bla"};
    
    private Vector<Person> daten = null;
    
    
    public DatenModell() {

        getData();
    }
    
    public Vector<Person> getData() {
        if (daten == null) {
            daten = new Vector<Person>();
        }
        return daten;
    }
    /*
    public Vector<String> getData() {
        daten = new Vector<Person>();
        daten.addElement();
    Person p = new Person();
    daten.add(p);
    
        return bla;
    }
    */

    public int getColumnCount() {
        return feldname.length;
    }
    
    public int getRowCount() {
        return getData().size();
    }
    
    public String getColumnName(int col) {
        return feldname[col];
    }

    public Object getValueAt(int row, int col) {
        Person p = daten.elementAt(row);

        switch (col) {
            case 1:
                return p.getPersonName();
            case 2:
                return p.getAnz();
            case 3:
                return p.getAnzStimmen();
            default:
                return null;
        }
    }

    public void setValueAt(Object value, int row, int col) {
        Person p = daten.get(row);

        switch (col) {
            case 1:
                p.setPersonName((String) value);
                break;
            case 2:
                p.setAnz((Integer) value);
                break;
            case 3:
                p.setAnzStimmen((Integer) value);
                break;
        }

        fireTableCellUpdated(row, col);
    }

Andere Klasse aus dem der aufruf erfolgt
Code:
DatenModell tableModel = new DatenModell();

        //Tabelle zur Anzeige der Daten
        table = new JTable(tableModel);
        table.setRowHeight(25);
        table.setRowSelectionAllowed(false);
        table.setColumnSelectionAllowed(false);
        table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
        /*Den sichtbaren Bereich der Tabelle definieren*/
        //table.setPreferredScrollableViewportSize(new Dimension( 1000, 500 ));
        JScrollPane sp = new JScrollPane(table);
        panel.add(sp, constr);
 

b0rsti

Aktives Mitglied
achso habs jetzt so gelöst
Code:
public Vector<Person> getData() {
        if (daten == null) {
            daten = new Vector<Person>();
            Person p = new Person();
            daten.add(p);
            daten.add(p);
            daten.add(p);
        }
        return daten;
    }

aber warum kann ich keine werte in die tabelle eintragen...?
kann mir da einer weiterhelfen?
 

tfa

Top Contributor
Wieso castest Du in setValueAt() die Person-Objekte nach Partei?
Eigentlich sollten viele, viele Exceptions auf der Konsole ausgegeben werden.
 

b0rsti

Aktives Mitglied
wenn ich es starte zeigt er mir die Tabelle an, wie ich sie haben möchte.

Aber ich kann nix manuell hereinschreiben...?
 

tfa

Top Contributor
Du musst isCellEditable() überschreiben und ggf. true zurückliefern, falls die Zelle editierbar sein soll.
 

b0rsti

Aktives Mitglied
wie meinst du das jetzt genau?
muss ich das ins model einbinden?
Ich möchte ja alle zellen editierbar haben...
 

b0rsti

Aktives Mitglied
hab jetzt diese methode in mein model eingebunden:
Code:
public boolean isCellEditable(int row, int col) {
        return true;
    }

jetzt kann ich zwar was in eine zelle schreiben, aber wenn ich dann eine andere anklicke ist es wieder weg!???
 

tfa

Top Contributor
Wird denn die setValueAt()-Methode richtig ausgeführt? Hast Du das mal debuggt?
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Vector von eigenen Klassen Java Basics - Anfänger-Themen 2
J Erste Schritte Alle möglichen ausgaben von 5 Zahlen als Vector Java Basics - Anfänger-Themen 7
C Werte im Vector in zufällige Reihenfolge bringen Java Basics - Anfänger-Themen 14
C Vector-Inhalt in zufällige Reihenfolge bringen Java Basics - Anfänger-Themen 6
J Compiler-Fehler Fehler bei Vektor (E extends Object declared in class Vector) Java Basics - Anfänger-Themen 9
J Reihenfolge im Vector lässt sich nicht drehen Java Basics - Anfänger-Themen 9
M Klassen Gesamt speicherbare Elemente in Vector? Java Basics - Anfänger-Themen 3
P Vector durchsuchen und Elemente löschen Java Basics - Anfänger-Themen 4
Z Vector in jTextField/jLabel darstellen Java Basics - Anfänger-Themen 4
P Objekte in Vector werden überschrieben Java Basics - Anfänger-Themen 4
P Array in Vector speichern Java Basics - Anfänger-Themen 2
E Methoden new Vector().add(x).add(x); ? Java Basics - Anfänger-Themen 5
F Vector istGeordnet Java Basics - Anfänger-Themen 15
R Vector-Filterfunktion Java Basics - Anfänger-Themen 4
Todesbote Map (Key=String; Value = Vector) Value/Vector sortieren Java Basics - Anfänger-Themen 13
J Vector Manipulieren.. Wie? Java Basics - Anfänger-Themen 16
M Vector eines Vectors einzeln ausgeben Java Basics - Anfänger-Themen 9
K String kommt schon in Vector vor? Java Basics - Anfänger-Themen 36
J Erzeugung eines Vector-Objekts - Frage zum Typ Java Basics - Anfänger-Themen 3
H Zugriff auf Vector Element Java Basics - Anfänger-Themen 2
C Vector erzeugt neue Indizes nach Input Java Basics - Anfänger-Themen 2
A Author in Vector Java Basics - Anfänger-Themen 22
M Vector überschreibt Elemente bei add()-Methode Java Basics - Anfänger-Themen 10
T Elemente im Vector werden einfach überschrieben! Java Basics - Anfänger-Themen 3
K Collections Vector zu String casten Java Basics - Anfänger-Themen 4
U Wozu dient ein Vector in Java? Java Basics - Anfänger-Themen 6
S Vector mit beliebigen Klassen an Funktion übergeben Java Basics - Anfänger-Themen 20
B Globale vector? Java Basics - Anfänger-Themen 7
E 2 Dimensionaler Vector Java Basics - Anfänger-Themen 5
T Map<String, Vector>? Java Basics - Anfänger-Themen 11
P Collections Vector füllen in for-Schleife Java Basics - Anfänger-Themen 3
J Vector Addition Java Basics - Anfänger-Themen 5
M 2D Vector Java Basics - Anfänger-Themen 2
N IndexOutOfBoundsException: Source does not fit in dest beim Kopieren von ArrayList in Vector Java Basics - Anfänger-Themen 4
M Umwandlung von Array in Vector und umgekehrt Java Basics - Anfänger-Themen 6
E Datentypen Klasse Vector aus der Standard-API anwenden Java Basics - Anfänger-Themen 7
D Klasse Vector entwerfen Java Basics - Anfänger-Themen 7
A Arrays vs Liste vs Vector Java Basics - Anfänger-Themen 30
H in for Schleife über Vector iterieren Java Basics - Anfänger-Themen 2
S Datentypen Vector auslesen Java Basics - Anfänger-Themen 12
yampi Objektsammlung - Hashtable, Vector, Arrays Java Basics - Anfänger-Themen 8
T Vector-Positin anzeigen Java Basics - Anfänger-Themen 3
C Vector - obsolete collection Java Basics - Anfänger-Themen 1
C Vector<Object> Probleme Java Basics - Anfänger-Themen 38
C Datentypen Probleme mit Vector.contains() Java Basics - Anfänger-Themen 10
M Datentypen function(Vector<SuperClass>), Vector<Subclass> Java Basics - Anfänger-Themen 6
L Vector Sortieren Java Basics - Anfänger-Themen 8
B Vector in Table ersetzen Java Basics - Anfänger-Themen 4
B Werte einer Spalte aus DB in einen Vector schreiben Java Basics - Anfänger-Themen 15
kitz Telefonbuch (Vector) Java Basics - Anfänger-Themen 17
E Arraylist mit Daten aus Vector füllen Java Basics - Anfänger-Themen 7
S Vector -> String JComboBox Java Basics - Anfänger-Themen 11
F Vector wird überschrieben Java Basics - Anfänger-Themen 8
T Vector sortiern Java Basics - Anfänger-Themen 7
C Frage zu Vector und muliplizieren des Inhaltes Java Basics - Anfänger-Themen 2
J Collection Vector Java Basics - Anfänger-Themen 8
Streeber ArrayList/Vector, mehrdimensional Java Basics - Anfänger-Themen 11
N Was ist der Unterschied zwischen ArrayList und Vector? Java Basics - Anfänger-Themen 3
babel Einen Vector/Liste mit Daten prüfen Java Basics - Anfänger-Themen 31
B Hilfe zum einem Problem mit Vector Java Basics - Anfänger-Themen 8
H Vector - Fehler? Java Basics - Anfänger-Themen 2
babel einen Vector nach Datum sortieren Java Basics - Anfänger-Themen 21
T Array-Vector Problem Java Basics - Anfänger-Themen 18
P Vector und Exception Java Basics - Anfänger-Themen 7
K Vector Java Basics - Anfänger-Themen 3
K Vector Java Basics - Anfänger-Themen 10
babel ein Vector mit verschiedenen Werten auslesen und berechnen Java Basics - Anfänger-Themen 34
T Object aus Vector übergeben Java Basics - Anfänger-Themen 2
B Vector<Point> als Rückgabewert Java Basics - Anfänger-Themen 23
L Vector einem Array hinzufügen Java Basics - Anfänger-Themen 14
P Vector mit double Java Basics - Anfänger-Themen 3
P Vector Elemente auslesen Java Basics - Anfänger-Themen 9
N Anfängerfrage richtige Syntax und Frage zu Vector Java Basics - Anfänger-Themen 7
C Unterschied zwischen ArrayList und Vector Java Basics - Anfänger-Themen 2
W Vector mit String[] auslesen Java Basics - Anfänger-Themen 4
Povlsen84 Initlialisierung, Vector, serialVersionUID . kleine Fragen Java Basics - Anfänger-Themen 4
Q Vector verändert trotz final seine Größe Java Basics - Anfänger-Themen 5
B Dopplete aus Vector entfernen Java Basics - Anfänger-Themen 8
E Vector Fehler bei allen Methoden von Vector Java Basics - Anfänger-Themen 2
K Vector zu Array machen Java Basics - Anfänger-Themen 10
1 JList Problem : Synchronisation mit Vector klappt nicht :( Java Basics - Anfänger-Themen 6
L Multidimensional Vector - Recordset Java Basics - Anfänger-Themen 5
K Objektklasse mit leerem Vector füllen Java Basics - Anfänger-Themen 6
K Vector wird überschrieben Java Basics - Anfänger-Themen 7
G Vector Strijng parsen Java Basics - Anfänger-Themen 6
K vector cannot be resolved Java Basics - Anfänger-Themen 3
G Zeichenkette suchen in Vector-Klasse Java Basics - Anfänger-Themen 11
R fehler beim incrementellen schreiben in einen vector Java Basics - Anfänger-Themen 11
M ObjectInputStream, Object und Vector<Object> Java Basics - Anfänger-Themen 4
G Vector, equal & Casts Java Basics - Anfänger-Themen 5
N Objekte in einen Vector packen oder nicht? Java Basics - Anfänger-Themen 3
D Frage zu Vector Java Basics - Anfänger-Themen 7
S Problem mit Vector Java Basics - Anfänger-Themen 2
G Object[] [] nach vector casten. Java Basics - Anfänger-Themen 3
G 2D vector zugriff auf elementinterne elemente wie Java Basics - Anfänger-Themen 3
G vector in neuem vector sortieren Java Basics - Anfänger-Themen 3
G jede 2te zeile in vector leer einfügen, wie? Java Basics - Anfänger-Themen 4
G vector füllt sich immer weiter. wo muss ich ihn leeren? Java Basics - Anfänger-Themen 3
V Vector/Arraylist hat nur gleiche Einträge Java Basics - Anfänger-Themen 3
H Vector und Dateien Java Basics - Anfänger-Themen 27

Ähnliche Java Themen

Neue Themen


Oben