Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1738 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  [Java] de l'utilisation des byte

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Java] de l'utilisation des byte

n°179795
bobuse
Posté le 22-07-2002 à 11:07:54  profilanswer
 

voilà mon blème, c'est que j'utilise des byte, et quand on affecte une valeur numérique à un byte ça fait comme quand on affecte une valeur décimale à un float.
Genre si je fais    byte b = 3 ;
 
possible loss of precision
found   : int
required: byte
 
alors j'ai essayé :
byte b = 3b ;
byte b = 3B ;
 
mais marche pas donc je suis obligé de mettre :
byte b = (byte) 3 ;
 
Mais je trouve ça un peu lourd, donc si qq'un avait une idée ...


Message édité par bobuse le 24-07-2002 à 14:43:58
mood
Publicité
Posté le 22-07-2002 à 11:07:54  profilanswer
 

n°179804
Cherrytree
cn=?
Posté le 22-07-2002 à 11:19:25  profilanswer
 

C'est bizzare ton affaire. Je viens de me compiler un programme test et ça marche impec. :heink:

n°179805
Cherrytree
cn=?
Posté le 22-07-2002 à 11:20:11  profilanswer
 

Code :
  1. public class ByteTest {
  2. public ByteTest() {}
  3. public static void main(String[] args) {
  4.  byte b = 8;
  5.  System.out.println(b);
  6. }
  7. }


---------------
Le site de ma maman
n°179815
bobuse
Posté le 22-07-2002 à 11:27:51  profilanswer
 

ok, d'accord, comme ça ça marche !
 
Mais  

Code :
  1. public class ByteTest {
  2. public ByteTest() {}
  3. public void arghh(byte b) {}
  4. public static void main(String[] args) {
  5. arghh(5);
  6. }
  7. }

 
 
La je suis formel, ça ne marche pas !  :D  
T'es obligé de faire arghh((byte)5);

n°179818
bobuse
Posté le 22-07-2002 à 11:29:52  profilanswer
 

de même que :  

Code :
  1. public class ByteTest {
  2. public ByteTest() {}
  3. public static void main(String[] args) {
  4. byte b = 8;
  5. byte b2 = b + 2;
  6. System.out.println(b);
  7. }
  8. }

 
va aussi faire gueuler javac !

n°179824
Cherrytree
cn=?
Posté le 22-07-2002 à 11:34:03  profilanswer
 

Effectivement. Il force le typage du bloc "+ 2" à int. Tu es donc forcé de caster. Tu n'as hélas (enfin, bon) pas le choix.


---------------
Le site de ma maman
n°180488
bobuse
Posté le 23-07-2002 à 10:51:08  profilanswer
 

ce qui est même bizarre je trouve, quoique je veux bien comprendre qu'il recaste quand il a envie, mais bon ...
 
 

Code :
  1. byte b1=3;
  2. byte b2=b1+(byte)2;

 
 
Ca non plus il en veut pas !
 
Si quelqu'un avait des infos précise la dessus (doc.), je suis bien curieux d'en savoir plus !


Message édité par bobuse le 23-07-2002 à 10:51:35
n°180503
Cherrytree
cn=?
Posté le 23-07-2002 à 11:09:39  profilanswer
 

+1


---------------
Le site de ma maman
n°181664
bobuse
Posté le 24-07-2002 à 14:45:05  profilanswer
 

et du coup c'est quoi le mieux :
 

Code :
  1. byte b2=(byte)(b1 + (byte)2);

 
ou
 

Code :
  1. byte b2=(byte)(b1 + 2);

n°183367
bobuse
Posté le 26-07-2002 à 09:43:28  profilanswer
 

[:juanetfanny]


Message édité par bobuse le 26-07-2002 à 09:43:51
mood
Publicité
Posté le 26-07-2002 à 09:43:28  profilanswer
 

n°183371
darklord
You're welcome
Posté le 26-07-2002 à 09:54:40  profilanswer
 

bobuse a écrit a écrit :

ok, d'accord, comme ça ça marche !
 
Mais  

Code :
  1. public class ByteTest {
  2. public ByteTest() {}
  3. public void arghh(byte b) {}
  4. public static void main(String[] args) {
  5. arghh(5);
  6. }
  7. }

 
 
La je suis formel, ça ne marche pas !  :D  
T'es obligé de faire arghh((byte)5);




 
Bin et alors. C'est normal. Qd tu vois 5 de manière absolue, quel type te vient à l'esprit en premier? un entier ou un byte ?
 


---------------
Just because you feel good does not make you right
n°183372
darklord
You're welcome
Posté le 26-07-2002 à 09:56:00  profilanswer
 

bobuse a écrit a écrit :

ce qui est même bizarre je trouve, quoique je veux bien comprendre qu'il recaste quand il a envie, mais bon ...
 
 

Code :
  1. byte b1=3;
  2. byte b2=b1+(byte)2;

 
 
Ca non plus il en veut pas !
 
Si quelqu'un avait des infos précise la dessus (doc.), je suis bien curieux d'en savoir plus !




 
le + java n'a pas la meme signification qu'en C hein! Et de manière générale un nombre entier dans l'absolu est toujours considéré comme un entier (ce qui est logique)


---------------
Just because you feel good does not make you right

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  [Java] de l'utilisation des byte

 

Sujets relatifs
livre sur javasocket + java
[java] pb pour chopper une page google avec des arguments[java] question sur les threads
[applet java] ouvrir une connexion http et renvoyer le code .... ?[java] comment retrouver la couleur d'un pixel
inserer un tableau html ds un panel java awt[JAVA RESOLU] Pb avec une applet
[Access 2000] pb d'utilisation de "Format"[Java] liste de paramètres en ligne de commande...
Plus de sujets relatifs à : [Java] de l'utilisation des byte


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR