Die Hauptidee von Zufall ist, dass es einen Pseudozufallswert zurückgibt. Es gibt keine vollständig zufälligen Funktionen, daher geben 2 zufällige Instanzen, die denselben Startwert verwenden, unter bestimmten Bedingungen denselben Wert zurück.
Es wird empfohlen, zuerst das Funktionsdokument anzuzeigen, um es zu verstehen ( https://docs.oracle.com/javase/8/docs/api/java/util/Random.html) ).
Nachdem wir nun verstanden haben, dass der zurückgegebene Wert der Funktion nextDouble () ein Pseudozufallswert zwischen 0,0 und 1,0 ist, können wir ihn zu unserem Vorteil verwenden.
Um eine Zufallszahl zwischen A und B zu erstellen, die angibt, dass die Grenzen gültig sind (A> B), müssen wir: 1. den Bereich zwischen A und B ermitteln, damit wir wissen, wie viele "Schritte" wir haben. 2. Verwenden Sie die Zufallsfunktion, um zu bestimmen, wie viele Schritte ausgeführt werden sollen (da der zurückgegebene Wert zwischen 0,0 und 1,0 liegt, können Sie ihn als "zufälligen Prozentsatz der Erhöhung auswählen" betrachten. 3. Fügen Sie den Versatz hinzu
Nach all dem können Sie sehen, dass Mob Ihnen meiner Meinung nach den einfachsten und gebräuchlichsten Weg dazu gegeben hat
double randomValue = rangeMin + (rangeMax - rangeMin) * r.nextDouble ();
double RandomValue = Offset + (Range) * (randomVal zwischen 0.0-1.0)
double rangeMax= Double.MAX_VALUE;
unddouble rangeMin= -rangeMax;
Sie werden immer einen unendlichen Wert im Gegenzug bekommen. Vielleicht möchten Sie nach suchenDouble.valueOf(rangeMax-rangeMin).isInfinite()
.