java常用类--随机数类Random

时间:2023-01-30 18:02:52

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类。