Ceci est vraiment bizarre, et je ne vois pas pourquoi cela se produit. Dans le cycle foreach, je parcours une collection de classe A, et pour chaque classe, j'appelle la méthode Count()
, où les nombres r1
et r2
sont générés à partir de la plage [-1,1]. Le problème est que Random.Next
renvoie les mêmes nombres "aléatoires" pour chaque instance. Lorsque les résultats de la première instance sont 0 et -1, les mêmes seront renvoyés par les instances suivantes. S'il vous plaît, pourriez-vous me dire pourquoi cela se passe? En outre, je ne peux pas obtenir des résultats différents dans chaque instance de classe A. Voici le code:Random.Next retourne toujours les mêmes valeurs
class a
{
Random rnd = new Random();
private void Count()
{
int r1 = rnd.Next(-1, 1);
int r2 = rnd.Next(-1, 1);
}
}
class b
{
List<a> listofA=new list<a>();
foreach (a ACLASS in listofA)
{
ACLASS.Count();
}
}
J'ai oublié aussi, je l'habitude d'avoir de nouveau la même question dans la journée à faire du Bingo pour les cartons un club, et à l'époque, j'ai utilisé le pire truc jamais connu de l'homme: Pause du fil pour 2 Mme inexpérimentée et folle ... Assez fou, j'ai une classe qui crée des noms aléatoires avec une déclaration aléatoire statique sur le dessus de tout. –