1、通过Math类生成随机数
Math.random():double型随机数 0<=Math.random()<1.0;
2、使用Random类生成随机数
java.util.Random类。通过实例化一个Random对象创建一个随机数生成器。
(1)Random random=new Random():以系统当前时间作为随机数生成器的种子。
(2)Random random=new Random(seedValue):自行设置随机数生成器的种子
获取各种数据类型随机数的方法:
举例说明:
import java.util.Random;
public class RandomTest {
public static void main(String[] args) {
Random r=new Random(); //实例化一个Random类
System.out.println("随机产生一个整数:"+r.nextInt());//随机产生一个整数
//随机产生一个大于等于0小于10的整数
System.out.println("随机产生一个大于等于0小于10的整数:"+r.nextInt(10));
System.out.println("随机产生一个布尔型的值:"+r.nextBoolean()); //随机产生一个布尔型的值
System.out.println("随机产生一个双精度型的值:"+r.nextDouble()); //随机产生一个双精度型的值
System.out.println("随机产生一个浮点型的值:"+r.nextFloat()); //随机产生一个浮点型的值
//随机产生一个概率密度为高斯分布的双精度值
System.out.println("随机产生一个概率密度为高斯分布的双精度值:"+r.nextGaussian());
}
}
运行结果:
随机产生一个整数:-86993121
随机产生一个大于等于0小于10的整数:1
随机产生一个布尔型的值:true
随机产生一个双精度型的值:0.4322082474975446
随机产生一个浮点型的值:0.4634028
随机产生一个概率密度为高斯分布的双精度值:1.35513097388703