6 Einfache Datentypen
6.1 Übersicht über die Grunddatentypen
 
  Werfen wir zunächst einen Blick auf die (Zahlen)bereiche in denen die Grunddatentypen operieren:
 
Grunddaten- typen
Typ Beschreibung Bereich
boolean Wahrheitswert
Boolscher Wert
true, false
char Einzelzeichen
Unicode (16 Bit)
'\u0000'...'\uffff'
byte 8-Bit-Ganzzahl
Zweierkomplement
-128...0...127
short 16-Bit-Ganzzahl -32768...0...32767
int 32-Bit-Ganzzahl -2 147 483 648 ...0...2 147 483 647
long 64-Bit-Ganzzahl ca. -9 e18 ...9 e18
float 32-Bit-Gleitkommazahl ca. -3.402823e88 .. 0..3.402823e88
kleinste Zahl >0: 1.4e-45
double 64-Bit-Gleitkommazahl ca. -1.797639e308 ..0.. 1.797639e308
kleinste Zahl > 0: 4.9e-324

Tabelle 6.1.1

zwei Testpro- grämmchen

Download:
ByteTest1.java
ByteTest2.java

public class ByteTest1 {

  public static void main (String[] args) {
      byte byteZahl = 0;
      byteZahl = byteZahl + 1;
      System.out.println(byteZahl);
  }
}
public class ByteTest2 {

  public static void main (String[] args) {
      byte byteZahl = 127;
      byteZahl++;
      System.out.println(byteZahl);
  }
}
  Das erste Programm lässt sich gar nicht erst kompilieren. Das liegt daran, dass der Infix-Operator1) '+' nicht für Werte vom Typ byte definiert sind. Ersetzen wir die Zeile

byteZahl = byteZahl + 1;

durch

byteZahl++; oder byteZahl += 1;

so lässt sich das Programm problemlos kompilieren und es tut auch, was es soll.

Die Ausgabe des zweiten Programms ist überraschend. Nach den Regeln der Addition erwartet man 128 und nicht -128. Allenfalls erwartet wir einen Fehler in der Ausgabe, da, wie unsere Tabelle zeigt, der Zahlenbereich von byte-Zahlen durch die Addition überschritten ist.

Ersetzt man nun unsere Zeile

byteZahl++;

durch

byteZahl+=2;

so erhält man -127 in der Ausgabe. Im Kapitel 12.3 wollen wir diese Merkwürdigkeiten auflösen und lernen, wie byte-Zahlen, aber auch short-, int-  und long-Zahlen im Rechner dargestellt werden. Zunächst aber nehmen wir uns die Zeit für kleines Intermezzo über Dualzahlen.
 

Fußnote  

1)

Ein Operator heißt Infix-Operator, wenn er zwischen den beiden Operanten steht, die Infixnotation ist also a + b. Die Addition zweier Zahlen a und b in Präfixnotation wäre + a b und in Postfixnotaion a b +.

[zurück]
 

zu 6.2 Das Dualsystem
  www.pohlig.de (C) MPohlig 2007