Amorçage d'une classe aléatoire pour des valeurs uniques
Dans votre code, vous avez une instance statique de la classe Random, qui génère une séquence de nombres aléatoires. Cependant, vous rencontrez un problème où le même randomNumber est obtenu à plusieurs reprises dans une boucle. En effet, la classe Random est initialisée par défaut avec une valeur de départ fixe, ce qui conduit à des valeurs prévisibles.
Pour résoudre ce problème, vous devez amorcer la classe Random avec une valeur aléatoire ou unique. Une approche efficace consiste à utiliser la méthode GetHashCode() de la classe Guid :
Random rand = new Random(Guid.NewGuid().GetHashCode());
La classe Guid génère un identifiant globalement unique (GUID), qui peut servir de graine pour la classe Random. La méthode GetHashCode() fournit un code de hachage du GUID, garantissant une graine différente à chaque invocation.
En utilisant cette approche, la classe Random générera une séquence de nombres véritablement aléatoires, même dans une boucle, éliminant les doublons. valeurs randomNumber.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!