随机数小结

一、Math.random()方法

在math类中存在一个random()方法,用于产生随机数字。这个方法默认生成大于等于0.0且小于1.0的double类型随机数,即0<=Math.random()=>1.0。虽然Math.random()方法只可以生成0-1之间的double型数字,但只要在Math.random()语句上稍加处理,就可以使这个方法产生任意范围的随机数。
例:

int)(Math.random()*n);
//返回大于等于0且小于n的随机数
 m+(int)(Math.random()*n);
 //返回大于等于m且小于m+n(不包括m+n)的随机数

使用Math类的random()方法也可以生成随机字符

(char) (char1+Math.random()*(char2-char1+1));

二、Random

除了Math.random()方法外,还有一种方式。
就是java.util.Random类通过实例化一个Random对象可以创建一个随机数生成器。
语法如下:

Random r = new Random();

以这种方法实例化对象时,java编译器将以系统时间作为随机数生成器的种子。因为每时每刻的时间不可能相同,所以产生的随机数不同。但是如果运行的太快,也会产生两次运行结果相同的随机数。
用户也可以在实例化Random类对象时,设置随机数生成器的种子。
语法如下:

Random r = new Random(seedValue);

r :Random类对象
seedValue :随机数生成器的种子

获取各种类型随机数的方法

public int nextInt :返回一个随机整数,包括正数,负数和零
public int nextInt(int n) :返回大于等于0且小于n的随机整数
public long nextLong :返回一个随机长整型值
public boolean nextBoolean() :返回一个随机布尔型值
public float nextFloat() :返回一个随机浮点型值
public double nextDouble() :返回一个随机双精度值
public double nextGaussian() ;返回一个概率密度为高斯分布的双精度值

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值