Datentypen

Datentypen haben einen festgelegten Wertebereich und dazugehörige Operationen. Man unterscheidet elementare Datentypen, die nur einen Wert beinhalten und zusammengesetzte Datentypen, die aus mehreren elementaren Grundelementen bestehen können.

Einfache Datentypen:

Wahrheitswert boolean: Dieser Datentyp kann nur zwei Werte annehmen, an/aus, wahr/falsch bzw. 1/0. Durch die logischen Operatoren UND, NICHT bzw. ODER können Abfragen und bedingte Verzweigungen umgesetzt werden.

Ein Integer ist ein ganzzahliger Datentyp. Der Wertebereich variiert ja nach Anzahl der reservierten Bits: es gibt short (16 Bit), int (32 bit) und long (64 Bit). Operationen sind die arithmetischen Operatoren (+,-,*), Vergleiche (<,>,=), sowie die ganzzahlige Division und die Modulo-Operation %.

Kommazahlen werden duch die Datentypen float (32 bit) oder durch double (64 bit) beschrieben. Operatoren sind +,-,*,/, <,> und =.

Ein einzelnes Zeichen als kleinster Textbaustein wird im Datentyp char dargestellt. Der Datentyp beansprucht meist 8 Bits.

Zusammengesetzte Datentypen:

In einem array kann eine beliebige Anzahl an Variablen eines gleichen Datentyps gespeichert werden. Bei der Deklaration muss die Anzahl schon vorgegeben werden:

int Zahlen[7] = {1,3,5,7,2,6,9};

Mehrere Zeichen werden in einem string gespeichert. Die Länge ist variabel.

string name = "Hugo";

Komplexe Daten werden in einer Klasse (class) gespeichert. Diese kann aus unterschiedlichen Elementen bestehen. Außerdem werden in der Klasse auch ihre Methoden gespeichert.

Array

Arrays spielen beim Umgang mit den Legosensoren, wie überhaupt in der Informatik eine ausgezeichnetet Rolle. Unter Lejos werden Sensorwerte des Sensors immer in einem Array abgespeichert. Dies macht Sinn, wenn der Lichtsenor z.B. drei Messwerte für rot, grün bzw. blau an den EV3 zurückgibt. 

Wird nur ein Wert zurückgegeben, so hat der Array halt nur die Länge 1. Die Länge des Array wird  vom Sensor vorgegeben.

Übersicht

Wir benötigen eigentlich nur boolean, int, double und String.
Wegen der Besonderheit des EV3 seine Messwerte als float abzuspeichern, brauchen wir auch noch float.

Datentyp Speicherbedarf Wertebereich  
boolean 1 Byte true / false Wahrheitswert
char 2 Byte Unicode-Zeichen (UTF-16) Zeichen
byte 1 Byte -128 … 127 Ganzzahl
short 2 Byte -32.768 … 32.767 Ganzzahl
int 4 Byte -2.147.483.648 … 2.147.483.647 Ganzzahl
long 8 Byte -2-63 bis 263-1, ab Java 8 auch 0 bis 264 -1 Ganzzahl
float 4 Byte +/-1,4* 10-45 … +/-3,4* 10+38 Kommazahl
einfache Genauigkeit (7 Stellen)
double 8 Byte +/-4,9* 10-324 … +/-1,7* 10+308 Kommazahl
doppelte Genauigkeit (15 Stellen)
String je nach Bedarf kein primitiver Datentyp Zeichenkette

Zurück