JAVA随机数生成 | Math.random()方法 | 随机生成int、double类型
2017-04-08 13:43
891 查看
Mathrandom
double随机数
要获取一个xy的double类型的随机数 左闭右开
要获取一个xy的double类型的随机数 左开右闭
要获取一个xy的double类型的随机数 左闭右闭
要获取一个xy的double类型的随机数 左开右开
int随机数
要获取一个xy的int类型的随机数 左闭右开
要获取一个xy的int类型的随机数 左开右闭
要获取一个xy的int类型的随机数 左闭右闭
要获取一个xy的int类型的随机数 左开右开
注意1
注意2
即返回一个[0,1)的double类型的随机数
提供另一种解决思路
返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数。
所以对于要获取一个[x,y]的double类型的随机数 | 左闭右闭时候
可以采用以下解决思路:
double随机数
要获取一个xy的double类型的随机数 左闭右开
要获取一个xy的double类型的随机数 左开右闭
要获取一个xy的double类型的随机数 左闭右闭
要获取一个xy的double类型的随机数 左开右开
int随机数
要获取一个xy的int类型的随机数 左闭右开
要获取一个xy的int类型的随机数 左开右闭
要获取一个xy的int类型的随机数 左闭右闭
要获取一个xy的int类型的随机数 左开右开
注意1
注意2
Math.random()
a pseudorandom double greater than or equal to 0.0 and less than 1.0.即返回一个[0,1)的double类型的随机数
以下情况 | y>x
double随机数
要获取一个[x,y)的double类型的随机数 | 左闭右开
double d = x + Math.random() * (y - x);
要获取一个(x,y]的double类型的随机数 | 左开右闭
double d = y - Math.random() * (y - x);
要获取一个[x,y]的double类型的随机数 | 左闭右闭
double d = x + Math.random() * y % (y - x + 1);
要获取一个(x,y)的double类型的随机数 | 左开右开
double d = (y - Math.random()) % y;
int随机数
要获取一个[x,y)的int类型的随机数 | 左闭右开
int d = x + (int)(Math.random() * (y - x));
要获取一个(x,y]的int类型的随机数 | 左开右闭
int d = y - (int)(Math.random() * (y - x));
要获取一个[x,y]的int类型的随机数 | 左闭右闭
int i = x + (int)(Math.random() * (y - x + 1));
要获取一个(x,y)的int类型的随机数 | 左开右开
int d = (int)((y - Math.random()) % y);
注意1
Random r = new Random(); double rs = r.nextDouble(); int in = r.nextInt(500);
提供另一种解决思路
注意2
Math类中有一
floor(double a)方法
public static double floor(double a)
返回最大的(最接近正无穷大)double 值,该值小于等于参数,并等于某个整数。
所以对于要获取一个[x,y]的double类型的随机数 | 左闭右闭时候
可以采用以下解决思路:
Double.valueOf( x + Math.floor(random.nextDouble() * y % (y - x + 1));
相关文章推荐
- 生成随机数方法:java.util.Random.nextInt(int n)方法实例
- Java利用Math.random()方法随机生成A-Z的字符
- java中Random与Math.random用法 生成int随机数
- 由计算机产生0-9之间的随机整数,用户输入猜测的数据,统计用户猜测的次数。产生随机数可以使用Math.rangom()静态方法,该方法返回正的double类型浮点数位于(0.0 1.0】间。
- Math.random()生成随机数方法
- string类型转换为int, float, double类型、随机数生成
- Java 随机数生成的方法实现与应用-random
- Java中生成随机数_Random()的用方法
- 利用Math.Random()方法来生成随机数。(转)
- Java中随机数方法的使用 math.random()
- java常用类解析十一:Random类(Math.random())生成指定范围的随机数或字符
- java中常用到的math方法(Math.PI、Math.random()、Math.abs(double)、Math.floor(double)、Math.ceil(double)、Math.round(double))
- 不使用Math.random方法生成随机数(随机数生成器)
- 【Java】利用Math.Random()方法随机出四个字符的字符串,字符包括数字,大小写英文字母
- java 使用Random和Math.random()去生成10以内的随机数
- java生成随机数方法大全(可指定范围、分布方式、类型、种子)
- 别再用JS里面的Math.random()方法生成随机数
- java常用类解析十一:Random类(Math.random())生成指定范围的随机数或字符
- JavaScript中用于生成随机数的Math.random()方法
- C#生成设置范围内的Double类型随机数的方法