Wieso gibts kein unsigned in Java?
-
rüdiger schrieb:
Und die unannehmlichkeiten fangen ja schon bei
a > b
an.... und gehen bei den arithmetischen Operationen weiter. Nur stellt sich doch die Frage, wozu man die an dieser Stelle braucht? Wenn man unsigned arbeitet, dann interessieren ja offenbar die Bits, also verwendet man Bitoperationen.
Und wer auf die arithmetischen Operationen doch nicht verzichten kann, der verwendet den nächst höheren Datentyp:
byte b = ...; int i = (int) b & 0xFF;
-
byto schrieb:
Und wer auf die arithmetischen Operationen doch nicht verzichten kann, der verwendet den nächst höheren Datentyp:
byte b = ...; int i = (int) b & 0xFF;
Reicht nicht int i = (int) b; ?
-
hansele schrieb:
Reicht nicht int i = (int) b; ?
Die Ergebnisse wären unterschiedlich, wenn b negativ ist.
byte b = -1; int i = (int)b; System.out.println(i); //liefert -1
byte b = -1; int i = b & 0xFF; System.out.println(i); //liefert 255