java惯用类-随机数类Random
java常用类--随机数类Random
除了这个类以外java还用一个用于多线程的随机数类,ThreadLocalRandom类。
Random类用于生成一个伪随机数,它的构造器可以是无参数(以系统时间为种子)的也可以显式的传入一个种子;
它可以输出各种类型的随机数;如果两个random的初始种子是一样的,那么他们产生的相同类型的随机数是一样的(无参看成参数相同)。
详细用法如下代码所示:
package lkl2; import java.util.Arrays; import java.util.Random; import java.util.concurrent.ThreadLocalRandom; //java 随机数生成类 Random public class RandomTest { public static void main(String[] args){ //先建一个对象 //可以提供一个随机数种子,默认是系统时间 Random rand = new Random(); //布尔型随机数 System.out.println("rand.nextBoolean"+rand.nextBoolean()); byte[] buffer = new byte[16]; //为一个byte数组赋随机数 rand.nextBytes(buffer); System.out.println(Arrays.toString(buffer)); //生成0.0~1.0之间的伪随机数 System.out.println("rand.nextDouble:"+rand.nextDouble()); //生成0.0~1.0之间的伪随机数 System.out.println("rand.nextFloat:"+rand.nextFloat()); //生成一个整数取值范围内的伪随机数 System.out.println("rand.nextInt:"+rand.nextInt()); //生成一个0~26之间的伪随机数 System.out.println("rand.nextInt(26):"+rand.nextInt(26)); //生成一个long整数取值范围的伪随机数 System.out.println("rand.nextLong():"+rand.nextLong()); } }
除了这个类以外java还用一个用于多线程的随机数类,ThreadLocalRandom类。