Java-Zufallszahlengenerator gibt trotz Startwert immer dieselbe Zahl zurück
Im bereitgestellten Java-Code ist der Zufallszahlengenerator trotz der Festlegung eines Startwerts konsistent ergibt die gleiche Zahl. Das Problem tritt auf, wenn für jeden Methodenaufruf ein neues Random-Objekt erstellt wird. Dadurch wird sichergestellt, dass jedes Mal ein neuer Startwert generiert wird, was zur Wiederholung von Zufallszahlen führt.
Um dieses Problem zu lösen, ist es wichtig, eine einzige Zufallsinstanz in der gesamten Klasse gemeinsam zu nutzen. Durch die Einbeziehung dieser Änderung stellen wir sicher, dass der Startwert nur einmal gesetzt wird, was zu einer Folge von echten Zufallszahlen führt.
public class Numbers { // Shared Random instance private Random randnum = new Random(); public int random(int i) { randnum.setSeed(123456789); return randnum.nextInt(i); } }
Mit dieser Änderung geben nachfolgende Aufrufe der Zufallsmethode unterschiedliche Zahlen zurück, die eingehalten werden die Einschränkungen, die ein fester Startwert mit sich bringt.
Das obige ist der detaillierte Inhalt vonWarum gibt mein Java-Zufallszahlengenerator trotz der Festlegung eines Startwerts immer dieselbe Zahl zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!