Primitive oder Wrapper-Typen
Integer, Double, Boolean und weitere
Primitive oder Wrapper-Typen ist eine kostenlose Java Academy-Lektion auf CoddyKit. Dies ist Lektion 1 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Java Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Java Academy-Kurs umfasst insgesamt 4 Lektionen.
Zwei Welten von Werten
Java verfügt über primitive Typen wie int, double und boolean, die Rohwerte direkt speichern. Außerdem gibt es Wrapper-Klassen wie Integer, Double und Boolean, die diese Werte in Objekte verpacken.
Primitive Typen sind schnell und benötigen wenig Speicher. Wrapper sind vollwertige Objekte, die in Collections verwendet werden können und null sein können.
Die acht primitiven Typen
Java definiert genau acht primitive Typen:
byte,short,int,longfür Ganzzahlenfloat,doublefür Dezimalzahlencharfür ein einzelnes Zeichenbooleanfür true/false
Zu jedem gibt es eine passende Wrapper-Klasse im Paket java.lang.
Passende Namen der Wrapper-Klassen
Bei den meisten Wrapper-Namen wird der Name des primitiven Typs einfach großgeschrieben. Zwei Namen weichen jedoch ab:
intwird zu Integercharwird zu Characterbooleanwird zu Boolean,doublewird zu Double und so weiter
Sehen wir uns einige Wrapper an.
public class Main {
public static void main(String[] args) {
Integer count = 42;
Double price = 9.99;
Boolean active = true;
Character grade = 'A';
System.out.println(count);
System.out.println(price);
System.out.println(active);
System.out.println(grade);
}
}Wrapper sind Objekte
Ein primitiver Typ enthält einen Wert. Ein Wrapper ist eine Objektreferenz und kann daher mit null auf nichts verweisen.
Das macht Wrapper nützlich, wenn ein Wert fehlen kann, etwa bei einer Datenbankspalte, die NULL zulässt.
public class Main {
public static void main(String[] args) {
Integer missing = null;
int present = 5;
System.out.println(missing);
System.out.println(present);
}
}Nützliche Konstanten
Wrapper-Klassen stellen praktische Konstanten bereit. Integer.MAX_VALUE und Integer.MIN_VALUE liefern die größten und kleinsten Werte des Typs int.
Das ist wesentlich einfacher, als sich die Zahlen selbst zu merken.
public class Main {
public static void main(String[] args) {
System.out.println(Integer.MAX_VALUE);
System.out.println(Integer.MIN_VALUE);
System.out.println(Long.MAX_VALUE);
}
}Hilfsmethoden
Wrapper-Klassen sind außerdem Sammlungen statischer Hilfsmethoden. Beispielsweise stellt Integer.toBinaryString eine Zahl zur Basis 2 dar, und Integer.max gibt den größeren von zwei Werten zurück.
public class Main {
public static void main(String[] args) {
System.out.println(Integer.toBinaryString(10));
System.out.println(Integer.max(7, 3));
System.out.println(Integer.toHexString(255));
}
}Warum Collections Wrapper benötigen
Java-Generics funktionieren nur mit Objekten, nicht mit primitiven Typen. Sie können nicht List<int> schreiben.
Stattdessen verwenden Sie List<Integer>. Der Wrapper ermöglicht es, den primitiven Wert in der von Collections benötigten Objektwelt zu verwenden.
import java.util.ArrayList;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Integer> numbers = new ArrayList<>();
numbers.add(10);
numbers.add(20);
System.out.println(numbers);
}
}Wrapper-Werte vergleichen
Um den numerischen Wert in zwei Wrappern zu vergleichen, verwenden Sie .equals() oder .compareTo() und nicht die arithmetischen Operatoren direkt auf den Objekten.
compareTo gibt eine negative Zahl, null oder eine positive Zahl zurück.
public class Main {
public static void main(String[] args) {
Integer a = 100;
Integer b = 200;
System.out.println(a.equals(b));
System.out.println(a.compareTo(b));
}
}Speicher und Leistung
Primitive Typen benötigen weniger Speicher und werden schneller verarbeitet, da kein Objekt-Overhead anfällt. Ein einzelner int besteht lediglich aus 4 Bytes Rohdaten.
Ein Wrapper-Objekt enthält zusätzliche Header-Informationen. Für Schleifen mit Millionen von Werten sollten Sie primitive Typen bevorzugen.
Unterschiedliche Standardwerte
Das Feld eines nicht initialisierten primitiven Typs erhält standardmäßig einen nullähnlichen Wert: int ist 0, boolean ist false.
Das Feld eines nicht initialisierten Wrappers erhält standardmäßig den Wert null. Dieser Unterschied ist wichtig, wenn Sie später versuchen, den Wert zu verwenden.
public class Main {
static int primitiveField;
static Integer wrapperField;
public static void main(String[] args) {
System.out.println(primitiveField);
System.out.println(wrapperField);
}
}Zwischen beiden wählen
Eine einfache Regel: Verwenden Sie aus Gründen der Leistung und Klarheit standardmäßig primitive Typen. Wechseln Sie zu einem Wrapper, wenn Sie ein Collection-Element, einen generischen Typ oder die Möglichkeit benötigen, einen fehlenden Wert mit null darzustellen.
Kurze Überprüfung
Testen Sie Ihr Verständnis von primitiven Typen und Wrappern.
Zusammenfassung
Sie haben den Unterschied zwischen primitiven Typen und Wrappern kennengelernt:
- Die acht primitiven Typen entsprechen acht Wrapper-Klassen wie
IntegerundDouble - Wrapper sind Objekte, können
nullsein und in Collections verwendet werden - Primitive Typen sind schneller und benötigen weniger Speicher, daher sollten Sie sie standardmäßig verwenden
- Wrapper-Klassen stellen außerdem nützliche Konstanten und Hilfsmethoden bereit
Häufig gestellte Fragen
Ist die Lektion „Primitive oder Wrapper-Typen“ kostenlos?
Ja — der vollständige Text von „Primitive oder Wrapper-Typen“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Java Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Java Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Primitive oder Wrapper-Typen“?
Integer, Double, Boolean und weitere Du übst Java Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Java Academy zu starten?
Keine Vorkenntnisse erforderlich. Java Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 1 von 4.
Wie lange dauert die Lektion „Primitive oder Wrapper-Typen“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Java Academy-Lektion Code schreiben und ausführen?
Ja. Jede Java Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Primitive oder Wrapper-Typen
- Autoboxing und Unboxing
- Parsen und Valueof
- Stolperfallen beim Autoboxing