Explain java.util.Random package?
The java.util.Random class permits you to create objects which generates pseudo-random numbers along with uniform or gaussian distributions according to a linear congruential formula along with a 48-bit seed.
The algorithm used is excellent sufficient for single-player, no-money games. I wouldn't use it for cryptography.You can select the seed or you can let Java pick one based on the current time.
Random r = new Random(109876L);int i = r.nextInt();int j = r.nextInt();long l = r.nextLong();float f = r.nextFloat();double d = r.nextDouble();int k = r.nextGaussian();The nextInt(), nextLong(), and nextBytes() techniques all cover their respective ranges along with equal likelihood. For example, to simulate a six-sided die; in which is to produces a random integer among 1 and 6, you might write Random r = new Random();int die = r.nextInt();die = Math.abs(die);die = die % 6;die += 1;System.out.println(die);
The nextGaussian() method returns a pseudo-random, Gaussian distributed, double value with mean 0.0 and standard deviation 1.0. The nextBytes() method fills a byte[] array with random bytes. For example,
byte[] ba = new byte[1024];Random r = new Random();r.nextBytes(ba);for (int i = 0; i < ba.length; i++) { System.out.println(ba[i]);