Math.random()-Manipulation: Generieren zufälliger Ganzzahlen innerhalb eines angegebenen Bereichs
Die Java-Funktion Math.random() generiert Zufallszahlen innerhalb eines bestimmten Bereichs der Bereich [0, 1). Es gibt jedoch Situationen, in denen Sie möglicherweise zufällige Ganzzahlen innerhalb eines bestimmten Bereichs erhalten müssen. Dieser Artikel zeigt, wie man dies mit Math.random() erreicht.
Absicht, eine zufällige ganze Zahl zwischen drei und fünf zu generieren
Während die Anweisung „(int) Math .random() * 5 3" generiert zufällige Ganzzahlen im Bereich [3, 5] nicht korrekt. Dies kann mithilfe einer benutzerdefinierten Funktion korrigiert werden Methode:
int randomWithRange(int min, int max) { int range = (max - min) + 1; return (int) (Math.random() * range) + min; }
Diese Methode berechnet den Bereich möglicher Werte, multipliziert ihn mit Math.random() und fügt den Mindestwert hinzu, um die Inklusivität sicherzustellen.
Ausgabebeispiel
System.out.println(randomWithRange(3, 5)); // Output: 3
Idiotensicher für Unrichtigkeiten Bestellen
Um Fehler zu vermeiden, wenn min größer als max ist, lautet eine aktualisierte Methode:
int randomWithRange(int min, int max) { int range = Math.abs(max - min) + 1; return (int) (Math.random() * range) + (min <= max ? min : max); }
Erweiterungen für die doppelte Zufallszahlengenerierung
Eine ähnliche Methode kann verwendet werden, um zufällige Zahlen mit doppelter Genauigkeit zu generieren:
double randomWithRange(double min, double max) { double range = (max - min); return (Math.random() * range) + min; }
Mit dieser Methode Methode:
System.out.println(randomWithRange(3.0, 5.0));
Das obige ist der detaillierte Inhalt vonWie generiert man in Java zufällige Ganzzahlen (und Doppelzahlen) innerhalb eines bestimmten Bereichs?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!