Unterschied zwischen Integer und int

Status
Nicht offen für weitere Antworten.

Reality

Top Contributor
Hi,
ich habe schon überall gesucht. In meinem Buch, Java-API und das OpenBook Java ist auch eine Insel, ist nur eine mäsige Erklärung vorhanden.

Ich weiss folgendes:

- Integer ist eine Klasse und enthält das Typ int
- Integer hat viele Methoden

Nun eine Frage:
Wieso geht dieser Code nur mit new Integer() ?

Code:
  ArrayList al= new ArrayList();
  
  al.add(new Integer(1));
  al.add(new Integer(2));
  al.add(new Integer(3));
  al.add(new Integer(4));

Es heisst ja
Code:
al.add(Object);

Mache ich etwas mit new int() kein neues Objekt?!

Liebe Grüße
Reality
 
int ist ein ein primitiver Datentyp, kein Objekt. Die Klasse Integer ist eine WrapperKlasse (to wrap = einwickeln, einpacken) für diesen Datentyp.
Die Methode add() von ArrayList erwartet beliebige Objekte. Um ein Objekt/Instanz einer Klasse zu erzeugen wird der new-Operator benutzt. Deshalb funktioniert der Code nur, wenn Du mit new dem Integer-Konstruktor den Wert vom Typ int übergibst (einpackst) und somit ein Integer-Objekt erzeugst, welches in der ArrayList gespeichert werden kann.
 
Mit der add-Methode kannst Du einer ArrayList ein Objekt (wie z. B. ein Integer-Objekt) hinzufügen.

int ist hingegen ein primitiver Datentyp und kein Objekt.
 
Hi,
danke für die Antworten!
int ist ja ein Bestandteil von Integer. Wie kann ich mir vorstellen, wie es gets involved?

Liebe Grüße
Reality
 
Reality hat gesagt.:
Hi,
danke für die Antworten!
int ist ja ein Bestandteil von Integer. Wie kann ich mir vorstellen, wie es gets involved?
War wohl schon a weng spaet 🙂

Integer ist nichts anderes als eine Klasse die ein int als Variable hat - mehr isses net....
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben