Ein Überblick über die in Java definierten primitiven Datentypen

Primitive Datentypen sind in Java unveränderlich eingebunden. Sie besitzen fest definierte Wertebereiche und sind gegen Objekte abgegrenzt.

Die primitiven Datentypen wurden aus Performance-Gründen nicht als Klassen realisiert. Die Bezeichnung primitiv stellt hier keine Wertung dar, sondern verweist auf die Tatsache, dass primitive Datentypen weder Eigenschaften (Variablen) noch Fähigkeiten (Methoden) besitzen. Es bedeutet somit eher soviel wie einfach aufgebaut. Ihre Anzahl und Datengröße ist eindeutig festgelegt.
Neben sechs numerischen Typen existieren der Typ char zur Darstellung von Unicode-Zeichen und der Wahrheitswert boolean.
Einen Überblick gibt die folgende Tabelle:

Typ Vorzeichen Größe Wertebereich
byte ja 8 bit -27 bis 27 - 1 (-128...127)
short ja 16 bit -215 bis 215 - 1 (-32768...32767)
int ja 32 bit -231 bis 231 - 1 (-2147483648...2147483647)
long ja 64 bit -263 bis 263 - 1 (-9223372036854775808...9223372036854775807)
char nein 16 bit 16-Bit Unicode Zeichen (0x0000...0xffff (6553510))
float ja 32 bit
V: 1 bit
E: 8 bit
M: 23 bit
-3.40282347 *1038 bis 3.40282347 *1038
double ja 64 bit
V: 1 bit
E: 11 bit
M: 52 bit
-1.79769313486231570 *10308 bis 1.79769313486231570 *10308
boolean - 8 bit true/false

Alle numerischen Datentypen werden einschließlich char im Abschnitt Numerische Datentypen ausführlich besprochen.
Da es gelegentlich nützlich sein kann, einen primitiven Datentyp wie ein Objekt zu behandeln, etwa zum Wandeln eines numerischen Wertes in einen String, existieren in Java für jeden primitiven Typ sog. Wrapper-Klassen, die ihn in ein Objekt verpacken und so die Anwendung von Methoden ermöglichen.

boolean

Im Gegensatz zu anderen Programmiersprachen ist boolean in Java kein numerischer Typ. Er kann weder inkrementiert/dekrementiert, noch durch numerische Literale repräsentiert werden, sondern ausschließlich durch true oder false.