Wrapper-Klassen kapseln primitive Datentypen, sodass diese bei Bedarf als Objekte gespeichert oder auf andere Weise verarbeitet werden können.

Möchte man z.B. privitive Datentypen in einer Map, einer ArrayList oder einer anderen Collection speichern, so steht man vor dem Problem, dass diese nur Referenztypen akzeptieren. Wrapper-Klassen bilden Objekte aus primitiven Datentypen, indem deren Konstruktoren die entsprechenden Werte als Argumente übergeben bekommen.

Darüber hinaus stellen sie - bis auf die Klasse Character - jeweils einen weiteren Konstruktor bereit, der die String-Repräsentanz des Wertes entgegennimmt:

int i = 12;
String s = "12";
Integer iObj = new Integer(i);
Integer sObj = new Integer(s);

Die Rückformung des Objektes in den primitiven Datentyp erfolgt mittels Unboxing oder über Methoden mit dem Bezeichner XXValue(), wobei 'XX' hier für den entsprechenden Datentyp steht:

int n = sObj.intValue();

Zusätzlich deklarieren alle Wrapper-Klassen statische parseXX-Methoden, die eine direkte Umformung eines Strings erlauben:

iObj = Integer.parseInt("25");