Hallo,
ich bin neu hier im Forum und hoffe, dass mir hier weitergeholfen werden kann.
Ich bin gerade dabei, die Typkonvertierung zu verstehen. Die implizite Typumwandlung habe ich (denke ich zumindest) verstanden. Hierbei wird ja einfach von einem kleineren zu einem größeren Wertebereich konvertiert.
Aber wie sieht es mit der expliziten Typumwandlung aus?
Wenn ich zum Bsp. habe:
float var = 512.7f + 100f;
byte b = (byte) var;
Wie gehe ich hier vor?
Bei der impliziten Typumwandlung gehe ich ja wiefolgt vor.
Bsp.:
byte var = (byte) 384;
Ich teile die Zahl 384 solange durch 2, bis ich die binäre Darstellung habe. Anschließend streiche ich alle Binärstellen bis auf die letzten 8 Bits weg. Das würde dann so aussehen: 1 1000 000 -> 1000 000. Jetzt rechne ich wieder in Dezimal um und erhalte -128.
ich bin neu hier im Forum und hoffe, dass mir hier weitergeholfen werden kann.
Ich bin gerade dabei, die Typkonvertierung zu verstehen. Die implizite Typumwandlung habe ich (denke ich zumindest) verstanden. Hierbei wird ja einfach von einem kleineren zu einem größeren Wertebereich konvertiert.
Aber wie sieht es mit der expliziten Typumwandlung aus?
Wenn ich zum Bsp. habe:
float var = 512.7f + 100f;
byte b = (byte) var;
Wie gehe ich hier vor?
Bei der impliziten Typumwandlung gehe ich ja wiefolgt vor.
Bsp.:
byte var = (byte) 384;
Ich teile die Zahl 384 solange durch 2, bis ich die binäre Darstellung habe. Anschließend streiche ich alle Binärstellen bis auf die letzten 8 Bits weg. Das würde dann so aussehen: 1 1000 000 -> 1000 000. Jetzt rechne ich wieder in Dezimal um und erhalte -128.
Zuletzt bearbeitet: