Typecasting

steeeeel

Mitglied
Hallo,
ich habe ein kleines Problem ....
unzwar soll ich einen short Wert zb -3 in einen char umwandeln....nun bekomme ich beim Programmieren den Integer Wert 65533..(Ausgabe soll auch ein Integer sein..)Ich verstehe nicht ganz wie sich das errechnet ...
 

steeeeel

Mitglied
public class TypeCasting {
public static void main(String[] args) {
short a=73;
short b=219;
short c=(short) (a+b); int d=(byte) c; short e=-3;
int f=(char) e;
int g=1;
int h=4;
double i=g/h*4.0;
System.out.println(a); System.out.println(b); System.out.println(c); System.out.println(d); System.out.println(e); System.out.println(f); System.out.println(g); System.out.println(h); System.out.println(i);
} }
 

TKausL

Top Contributor
Char besitzt kein vorzeichen, wenn du also eine minuszahl zu Char castest bekommst du die höchste Char-zahl MINUS deine zahl die gecastet wird.

E: nein muss mich berichtigen.
-3 zu char:
0 - 1 = 65535 (die hoechste char-Zahl)
65535 - 1 = 65534
65534 - 1 = 65533
 

Ähnliche Java Themen

Neue Themen


Oben