Datentypen
1. Datentypen
Primitive Datentypen:
Datentyp
|
Speicher in Byte
|
Min. Wert
|
Max. Wert
|
boolean |
1 |
true |
false |
byte |
1 |
-128 (-2^7) |
127 (2^7 - 1) |
char |
2 |
0x0000 |
0xffff |
short |
2 |
-32768 (–2^15) |
32767 (2^15 - 1) |
long |
8 |
–9223372036854775808 (–2^63) |
9223372036854775807 (2^63 - 1) |
int |
4 |
–2147483648 (–2^31) |
2147483647 (2^31 - 1) |
float |
4 |
1,40239846E-45f |
3,40282347E+38f |
double |
8 |
4,94065645841246544E-324 |
1,79769131486231570E+308 |
bei double und float unterscheiden die Wertebereiche nicht in Abhängigkeit vom Vorzeichen
Referenztypen
= Objekte, Strings und Arrays
- Referenztypen werden mithilfe des new - Operator erzeugt
- Konstante null beschreibt leere Objekte / Referenzen
- bei Strings und Arrays ist der Aufruf des new - Operators nicht notwendig
- Arrays sind klassenlose Objekte mit der Instanzvariable length
- Referenztypen werden mit clone kopiert
- Gleichheitstest testet ob beide Verweise gleich sind, das ist strenger als nur inhaltlich gleich
2. Typenkonvertierung
- erweiternde Konvertierung (wird automatisch vom Compiler durchgeführt)
- einschränkende Konvertierung (wird nicht automatisch durchgeführt, da Werte verfälscht werden können)
- keine legale Konvertierung von und nach boolean
- keine Konvertierung zwischen Primitiven & Referenztypen