Afficher la valeur décimale d'une variable de type byte

Afficher la valeur décimale d'une variable de type byte - Java - Programmation

Marsh Posté le 21-02-2003 à 08:01:05    

Bonjour,
 
Je voudrais juste savoir comment faire pour afficher la valeur décimale d'une variable de type byte.
 
ex:
 

Code :
  1. byte bit = (byte) 0x84;
  2. Byte b = new Byte(bit);
  3. System.out.println(b.intValue());


 
Le problème est que j'obtiens -124 au lieu de la bonne valeur (132).
 
merci.

Reply

Marsh Posté le 21-02-2003 à 08:01:05   

Reply

Marsh Posté le 21-02-2003 à 09:20:00    

GROSSET a écrit :

Bonjour,
 
Je voudrais juste savoir comment faire pour afficher la valeur décimale d'une variable de type byte.
 
ex:
 

Code :
  1. byte bit = (byte) 0x84;
  2. Byte b = new Byte(bit);
  3. System.out.println(b.intValue());


 
Le problème est que j'obtiens -124 au lieu de la bonne valeur (132).
 
merci.


 
C'est parce qu'un byte est, comme son nom l'indique, un octet. Du coup, sa valeur entant qu'entier décimal est,  au plus, de 128. Au dela de 128, ça boucle dans les négatifs. ce qui nous donne : 128 + 4 != 132, mais égale -128 + 4.

Reply

Marsh Posté le 21-02-2003 à 09:21:26    

Avec un octet, on a 256 codages possibles différents. En Java, un byte ne va pas de 0 à 256, mais de -128 à +128

Reply

Marsh Posté le 21-02-2003 à 09:35:14    

El_gringo a écrit :

Avec un octet, on a 256 codages possibles différents. En Java, un byte ne va pas de 0 à 256, mais de -128 à +128


-128 à 127 ;)
 
et puis au pire tu prends (((int)b)+256)&0xff ... ;)
 

Reply

Marsh Posté le 21-02-2003 à 18:33:35    

ok merci.
 
Mais alors comment faire pour afficher 132 ? à partir de ma variable ?

Reply

Marsh Posté le 21-02-2003 à 18:35:06    

oki c bon Dsls merci :-)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed