Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
ich habe einen Vector, in dem Daten gespeichert werden
Habe noch nie mit einem Vector gearbeitet und habe im Internet verschieden Sachen gesehen.
was ist denn richtig und vor allem warum? (eclipse mekert in beiden Fällen nicht)
Code:
public Vector getDBVector()
{
Vector<Object> dbVector = new Vector<Object>(28);
dbVector.add(name); //name war natürlich String
dbVector.add(new Integer(alter);
.
.
.
}
oder
Code:
public Vector getDBVector()
{
Vector<Object> dbVector = new Vector<Object>(28);
dbVector.add(name); //name war natürlich String
dbVector.add(alter); // also ohne new Integer...
.
.
.
}
und es gibt ja auch
dbVector.add(new String(name));
also meine Frage, wo sind die Unterschiede? und wann benutzt man was?
wenn du unter java 1.5 arbeitest ist beides richtig.
nennt sich autoboxing.. java uebernimmt das umwandeln in ein Objekt fuer dich. D.h. alter (was wahr. ein int ist) wird automatisch in ein Integer gewandelt.
aber Vector<Object> ist meistens keine gute Loesung... pack die informationen lieber in ein objekt und schriebe die objekte dann in den Vector
Variante 1 und 2 sind äquivalent. Beides ist valide.
Vor Java 1.5, als es noch kein autoboxing gab, musstest Du native datentypen in die Wrapperklassen packen.
Ab 1.5. wird new Integer(5) und 5 gleich behandelt was das betrifft. Dir wird also ne Menge abgenommen.
Code:
public Vector getDBVector()
{
String name = "Mein Name";
int alter = 17;
Vector dbVector = new Vector(28);
dbVector.add(name);
dbVector.add(alter); // BANG ! Fehler, geht nicht.
dbVector.add(ewn Integer(alter)); // So ist es richtig.
.
.
}
Warum ist denn Vector<Object> keine gute Lösung?
Diese Methode habe ich in der Klasse Kunde implementiert ud der Vector ist dann eine Zeile aus der DB-Tabelle.
Warum ist denn Vector<Object> keine gute Lösung?
Diese Methode habe ich in der Klasse Kunde implementiert ud der Vector ist dann eine Zeile aus der DB-Tabelle.