A voir également:
- Problème java
- Jeux java itel ✓ - Forum Jeux vidéo
- Java runtime - Télécharger - Langages
- Java apk - Télécharger - Langages
- Scanf en java ✓ - Forum Java
- Java heap space ✓ - Forum Java
4 réponses
KX
Messages postés
16668
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
17 mars 2023
3 005
16 avril 2012 à 19:38
16 avril 2012 à 19:38
Si tu as déjà généré aléatoirement un nombre entre -128 et 127, tu as peut être déjà fait la manipulation que tu cherches sans t'en rendre compte, il faudrait voir comment tu as fait !
Merci de prendre le temps de répondre...
Voici la fonction qui génère un tableau de byte:
public byte nextByte(){
Random generateur = new Random(System.currentTimeMillis());
byte [] tableau = new byte[1];
generateur.nextBytes(tableau);
return tableau[0];
}//end nextByte
Voici la fonction qui génère un tableau de byte:
public byte nextByte(){
Random generateur = new Random(System.currentTimeMillis());
byte [] tableau = new byte[1];
generateur.nextBytes(tableau);
return tableau[0];
}//end nextByte
KX
Messages postés
16668
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
17 mars 2023
3 005
16 avril 2012 à 19:55
16 avril 2012 à 19:55
Ce n'est pas très propre de créer un tableau à une case comme ça, en plus vu que les byte ne permettent pas de faire des calculs (addition, modulo, etc) sans avoir à repasser par des int, il vaudrait mieux travailler directement avec des int, via les méthodes nextInt ou next.
Remarque : plutôt que d'utiliser une graine sur le temps tu peux laisser le constructeur par défaut de Random...
Remarque : plutôt que d'utiliser une graine sur le temps tu peux laisser le constructeur par défaut de Random...
public byte nextByte()
{
Random generateur = new Random();
int n;
// calcul avec des int
return (byte) n;
}
Salut,
Cordialement,
Dan
int min = 32;
int max = 127;
int nbreVal = ((max - min) +1); // nombre de valeurs possibles
Random r = new Random();
int aI = min + r.nextInt(nbreVal);
System.out.println("Le nombre int aléatoire est " + aI);
//conversion int / String
String aStr = "" + aI;
System.out.println("Le nombre String aléatoire est " + "\"" + aStr + "\"");
//conversion int / byte:
Integer intObj = new Integer(aStr);
byte leByte = intObj.byteValue();
System.out.println("byte leByte = " + leByte);
// Ou bien entendu:
leByte = Byte.parseByte(aStr);
System.out.println("byte leByte = " + leByte);
Cordialement,
Dan