Generieren Sie eine Zufallszahl zwischen zwei Terminals in Java
Zufallszahlen werden in verschiedenen Bereichen verwendet, z. B. in der Simulation, um ein Phänomen wie den Fall eines Körpers zu simulieren, oder in Videospielen wie Sudoku, bei denen sich das Raster vom vorherigen Spiel oder einem Unentschieden unterscheiden muss, usw.Java hat zwei Möglichkeiten, Zufallszahlen zu generieren: Die erste ist die
Die Methode Math.random() in Java
Die Methode random() ist einfach zu bedienen, es befindet sich in derdouble nb;Run:
nb = Math.random();
System.out.println(nb);
0.9610715687122661Um Zahlen größer als 1 zu erhalten, multiplizieren Sie das Ergebnis mit 10.100.1000...100000.
nb=nb*100;
96.10715687122661
Die java.util.Random-Klasse
Diese Klasse ist leistungsfähiger, da sie eine Generierung mehrerer Pseudozufallstypen bietet: Integer, Float, Double, Byte, Boolean...Generieren von Ganzzahlen zwischen Null und n in java
Die Methode next(int n) erzeugt eine Zahl einheitlich zwischen 0 und n-1.
Random = new Random();Der Zufallskonstruktor erstellt einen neuen Zahlengenerator. Das Ausführen dieses Codes gibt eine vom Generator ausgewählte Ziffer zwischen 0 und 8 zurück.
int nb;
nb = random.nextInt(9);
Generate integer between two terminals in java
Die Untergrenze wird mit dem Ergebnis summiert:
nb = borne_inférieur + random(borne_superieur-borne_inférieur)
int genererInt(int borneInf, int borneSup){
Random random = new Random();
int nb;
nb = borneInf+random.nextInt(borneSup-borneInf);
return nb;
}
public static void main(String[] args) {
System.out.println("range[10, 20]: "+generieren(10,20));
}
Run:
range[10, 20]:15
Generieren Sie eine ganze Zahl mit der Methode random.nextBytes()
Die Methode nexBytes(bytes[]) gibt ein Array von Bytes zufällig. Die Anzahl der Bits entspricht der Größe des Arrays, das als Argument übergeben wird.byte[] generate Bit(int size){Runtime:
Random random = new Random();
byte[] tbyte = neues Byte[Größe];
random.nextBytes(tbyte);
tbyte zurückgeben;
}
public static void main(String[] args) {
byte[] tbyte = generateBit(20);
for(byte bit:tbyte)
System.out.print(" "+bit);
}
-8 16 -7 27 54 -44 -75 88 -91 -74 -124 10 -100 101 -96 -41 -101 71 33 74
Boolean
Boolean hat zwei Werte: true oder false.boolean genererBool(){
Random random = new Random();
gibt random.nextBoolean();
}
Generieren von Gleitkomma- und Double-Zahlen in java
Wie im random() der Math-Klasse liegt die Ziffer zwischen 0.0 und 1.0.float genererFloat(){Runtime:
Random random = new Random();
gibt random.nextFloat() zurück;
}
double genererDouble(){
Random random = new Random();
gibt random.nextDouble() zurück;
}
public static void main(String[] args) {
System.out.println("float: "+generateDouble());
System.out.println("double: "+generateFloat());
}
double: 0.8538674831662335In Java wird das Double auf 8 Byte und das Float auf 4 Byte gespeichert.
float: 0.46791792
Referenzen:
Javadoc: java.until.Random class
Javadoc: Math.random() method
Zufällige Ganzzahlen generieren in ein Bereich mit Java
java.util.Random.nextInt() Methode