Random identique
Hamster18
Messages postés
176
Date d'inscription
Statut
Membre
Dernière intervention
-
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
KX Messages postés 16761 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
J'essaye d'initialiser automatique un tableau de int dans un objet carte ainsi j'ai ceci :
et la méthode initialiser tab comme ceci :
Mais mes nb1, nb2, nb3 sont identique pour toute mes cartes est j'en voie pas la raison ...
Merci d'avance pour votre aide.
Cordialement.
J'essaye d'initialiser automatique un tableau de int dans un objet carte ainsi j'ai ceci :
new Carte( [mes autres attributs ], initialiserTab(new int[3]) )
et la méthode initialiser tab comme ceci :
Random rand1 = new Random(); Random rand2 = new Random(); Random rand3 = new Random(); nb1 = rand1.nextInt(25); nb2 = rand2.nextInt(25); nb3 = rand3.nextInt(25); for (int i = 0; i < 3; i++) { tab[i] = nb1; if (i == 1) { tab[i] = nb2; } if (i == 2) { tab[i] = nb3*-1; } }
Mais mes nb1, nb2, nb3 sont identique pour toute mes cartes est j'en voie pas la raison ...
Merci d'avance pour votre aide.
Cordialement.
A voir également:
- Random identique
- Site identique a coco - Accueil - Réseaux sociaux
- Remplaçant de Coco : quelles solutions pour tchater gratuitement en ligne ? - Accueil - Réseaux sociaux
- Pour ce faire la taille des cellules fusionnées doit être identique - Forum Excel
- La taille des cellules fusionnées doit être identique ✓ - Forum Excel
- Excel somme texte identique ✓ - Forum Excel
5 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour, je pense que rand1 suffit, et peut-être utilisé plusieurs fois.
Hamster18
Messages postés
176
Date d'inscription
Statut
Membre
Dernière intervention
J'avais essayer juste avec rand1 au début mais j'ai le même résultat à la fin ...
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
1 584
>
Hamster18
Messages postés
176
Date d'inscription
Statut
Membre
Dernière intervention
je ne peux pas deviner comment tu fais avec uniquement rand1.
Hamster18
Messages postés
176
Date d'inscription
Statut
Membre
Dernière intervention
>
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
comme ceci :
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
1 584
>
Hamster18
Messages postés
176
Date d'inscription
Statut
Membre
Dernière intervention
il serait préférable de réutiliser rand1, sans faire new à chaque appel de la méthode.
D'accord, mais ça change pas mon problème, toute mes carte ont dans leur tableau les mêmes valeurs ...
Voici le code exacte :
int nb1; int nb2; int nb3; private Random rand1 = new Random(); private int[] initialiserTab( int tab[]) { nb1 = rand1.nextInt(5)+5; nb2 = rand1.nextInt(5)+5; nb3 = rand1.nextInt(5)+5; for (int i = 0; i < 3; i++) { tab[i] = nb1; if (i == 1) { tab[i] = nb2; } if (i == 2) { tab[i] = nb3*-1; } } return tab; } public ListeCarte() { listeCarte.add(new Carte(1,"Droit", R.drawable.droit_des_femmes, "Voulez-vous donner le droit de vote aux femmes ?", initialiserTab(new int[3]) )); listeCarte.add(new Carte(2,"Guerre", R.drawable.guerre, "Les hommes cherchent sans cesse à s'entretuer. Voulez-vous leur en donner les moyens ?", initialiserTab(new int[3]) )); [...] }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour,
Plusieurs "corrections" pour éviter du code inutile (genre la boucle qui ne sert à rien, les variables globales à proscrire, etc.)
Plusieurs "corrections" pour éviter du code inutile (genre la boucle qui ne sert à rien, les variables globales à proscrire, etc.)
private static final Random random = new Random(); private static int[] randomArray() { return new int[] { random.nextInt(5)+5, random.nextInt(5)+5, random.nextInt(5)+5 } } public ListeCarte() { listeCarte.add(new Carte(1, "Droit", R.drawable.droit_des_femmes, "Voulez-vous donner le droit de vote aux femmes ?", randomArray())); listeCarte.add(new Carte(2, "Guerre", R.drawable.guerre, "Les hommes cherchent sans cesse à s'entretuer. Voulez-vous leur en donner les moyens ?", randomArray())); }