J'ai le code suivant...
int Val=-32768;
String Hex=Integer.toHexString(Val);
Cela équivaut à ffff8000
int FirstAttempt=Integer.parseInt(Hex,16); // Error "Invalid Int"
int SecondAttempt=Integer.decode("0x"+Hex); // Error "Invalid Int"
Ainsi, dans un premier temps, il convertit la valeur -32768 en une chaîne hexagonale ffff8000, mais il ne parvient pas à reconvertir la chaîne hexagonale en un nombre entier.
En .Net
il fonctionne comme je m'y attendais, et returns -32768
.
Je sais que je pourrais écrire ma propre petite méthode pour convertir cela moi-même, mais je me demande si j'ai raté quelque chose, ou s'il s'agit vraiment d'un bogue ?