Bonjour à tous,
Voilà, il se trouve que mon random à un comportement bizarre :
Quand je lance le programme (android), le générateur doit faire deux fois cet algo, et il retrourne par paire le même résultat (mais différent à chaque lancement).
Voici la fonction, ce sera plus parlant qu'un discours :
Que le random soit dans ou hors de la boucle c'est pareil
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 LinkedList<Integer> res = new LinkedList<Integer>(); int nbBats = laVille.getLesBatiments().length; int nbRemplis = 0; int nextBat; if (nbEnigmes > nbBats || nbEnigmes < 0) { nbEnigmes = nbBats; } while (nbRemplis < nbEnigmes) { Random rdm = new Random(); int rand = rdm.nextInt(Integer.MAX_VALUE); Log.i("sexe","random = "+rand); nextBat = rand % nbEnigmes; if (!res.contains(nextBat)) { res.add(nextBat); nbRemplis++; } } return res; }...
Donc l'algo me retourne une liste de nbEnigmes de long, avec une seule fois chaque nombre entre 0 et nbEnigmes (ce qui est bon).
Ceci est très bizarre![]()
Partager