Třída Java Random se používá ke generování proudu pseudonáhodných čísel. Algoritmy implementované třídou Random používají chráněnou obslužnou metodu, která může dodat až 32 pseudonáhodně generovaných bitů při každém vyvolání.
Metody
| Metody | Popis |
|---|---|
| čtyřhra() | Vrátí neomezený proud pseudonáhodných dvojitých hodnot. |
| ints() | Vrátí neomezený proud pseudonáhodných int hodnot. |
| dlouho () | Vrátí neomezený proud pseudonáhodných dlouhých hodnot. |
| další() | Vygeneruje další pseudonáhodné číslo. |
| nextBoolean() | Vrátí další rovnoměrně rozloženou pseudonáhodnou booleovskou hodnotu ze sekvence generátoru náhodných čísel |
| dalšíByte() | Generuje náhodné bajty a vkládá je do zadaného pole bajtů. |
| nextDouble() | Vrátí další pseudonáhodnou hodnotu Double mezi 0,0 a 1,0 ze sekvence generátoru náhodných čísel |
| nextFloat() | Vrátí další rovnoměrně rozloženou pseudonáhodnou plovoucí hodnotu mezi 0,0 a 1,0 ze sekvence tohoto generátoru náhodných čísel |
| dalšíGaussian() | Vrátí další pseudonáhodnou Gaussovu dvojitou hodnotu se střední hodnotou 0,0 a standardní odchylkou 1,0 ze sekvence tohoto generátoru náhodných čísel. |
| nextInt() | Vrátí rovnoměrně rozloženou pseudonáhodnou int hodnotu vygenerovanou ze sekvence tohoto generátoru náhodných čísel |
| nextLong() | Vrátí další rovnoměrně rozloženou pseudonáhodnou dlouhou hodnotu ze sekvence generátoru náhodných čísel. |
| setSeed() | Nastaví semeno tohoto generátoru náhodných čísel pomocí jediného dlouhého semena. |
Příklad 1
import java.util.Random; public class JavaRandomExample1 { public static void main(String[] args) { //create random object Random random= new Random(); //returns unlimited stream of pseudorandom long values System.out.println('Longs value : '+random.longs()); // Returns the next pseudorandom boolean value boolean val = random.nextBoolean(); System.out.println('Random boolean value : '+val); byte[] bytes = new byte[10]; //generates random bytes and put them in an array random.nextBytes(bytes); System.out.print('Random bytes = ( '); for(int i = 0; i <bytes.length; i++) { system.out.printf('%d ', bytes[i]); } system.out.print(')'); < pre> <span> Test it Now </span> <p> <strong>Output:</strong> </p> <pre> Longs value : java.util.stream.LongPipeline$Head@14ae5a5 Random boolean value : true Random bytes = ( 57 77 8 67 -122 -71 -79 -62 53 19 ) </pre> <h2>Example 2</h2> <pre> import java.util.Random; public class JavaRandomExample2 { public static void main(String[] args) { Random random = new Random(); //return the next pseudorandom integer value System.out.println('Random Integer value : '+random.nextInt()); // setting seed long seed =20; random.setSeed(seed); //value after setting seed System.out.println('Seed value : '+random.nextInt()); //return the next pseudorandom long value Long val = random.nextLong(); System.out.println('Random Long value : '+val); } } </pre> <span> Test it Now </span> <p> <strong>Output:</strong> </p> <pre> Random Integer value : 1294094433 Seed value : -1150867590 Random Long value : -7322354119883315205 </pre></bytes.length;> Příklad 2
import java.util.Random; public class JavaRandomExample2 { public static void main(String[] args) { Random random = new Random(); //return the next pseudorandom integer value System.out.println('Random Integer value : '+random.nextInt()); // setting seed long seed =20; random.setSeed(seed); //value after setting seed System.out.println('Seed value : '+random.nextInt()); //return the next pseudorandom long value Long val = random.nextLong(); System.out.println('Random Long value : '+val); } } Otestujte to hned Výstup:
Random Integer value : 1294094433 Seed value : -1150867590 Random Long value : -7322354119883315205