下文讲述Random生成随机数的示例分享,如下所示
Random r = new Random();
Random类生成的随机数是一个左闭右开范围的随机数例:
Random r = new Random();
生成[0,1.0)区间的小数
double d1 = r.nextDouble(); 直接使用nextDouble方法获得
生成[0,5.0)区间的小数
double d2 = r.nextDouble() * 5; 由于nextDouble方法生成的数字区间是[0,1.0) 将该区间扩大5倍即是要求的区间
生成[1,2.5)区间的小数
double d3 = r.nextDouble() * 1.5 + 1; 生成[1,2.5)区间的随机小数 则只需要首先生成[0,1.5)区间的随机数字 然后将生成的随机数区间加1即可
生成任意整数
int n1 = r.nextInt(); 使用nextInt方法即可
生成[0,10)区间的整数
int n2 = r.nextInt(10); n2 = Math.abs(r.nextInt() % 10); 以上代码都可生成[0,10)区间的整数
生成[0,10]区间的整数
int n3 = r.nextInt(11); n3 = Math.abs(r.nextInt() % 11); 相对于整数区间 [0,10]区间和[0,11)区间等价 所以即生成[0,11)区间的整数。
生成[-3,15)区间的整数
int n4 = r.nextInt(18) - 3; n4 = Math.abs(r.nextInt() % 18) - 3; 生成非从0开始区间的随机整数
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。