java中两种生成指定区间随机数

Java中有两种生成随机数的做法
一种是直接调用Math类中的random方法,即Math.random(),该方法生成的[0,1)的随机双精度浮点数,我们可以通过变换来实现我们要的指定区间的随机数,如我们想生成[min,max]区间的整数,可以这样做,int ran=(int)(Math.random()*(max-min+1))+min。
另一种是调用Random类中的nextInt,nextDouble方法,不过使用这种方式产生随机数,需要new一个新对象,再通过对象来调用该类中的方法,同样,如果我们想生成[min,max]区间的整数,可以这样做,Random ran=new Random();int a=ran.nextInt(max-min+1)+min;
下面通过代码演示两种方式生成指定区间的随机数。

import java.util.Random;
public class Random_Test {
 public static void main(String[] args) {
  Random_Test rt=new Random_Test();
  rt.random();
 }
 public void random(){
       System.out.print("调用Math类中的random方法生成的随机数为:");
       for(int j=0;j<20;j++) {
       int b=(int)(Math.random()*9)+6;//调用Math类中的random方法,生成生成[6,14],的随机整数
       System.out.print(b+" ");
       }
        Random ran=new Random();//使用Random类创建对象
        System.out.println();
        System.out.print("调用Random类的nextInt方法生成的随机数为:");
        for(int i=0;i<20;i++) {
         int a=ran.nextInt(9)+6;//调用Random类的nextInt方法,生成[6,14],的随机整数
         System.out.print(a+" ");
       }
  }
}

运行结果如下:
调用Math类中的random方法生成的随机数为:6 6 7 10 7 7 13 6 7 9 8 10 11 13 8 7 8 9 13 10
调用Random类的nextInt方法生成的随机数为:12 7 10 6 6 13 13 14 6 10 7 10 9 11 8 6 11 7 9 10

以上是Java生成指定区间随机数的两种方式。


版权声明:本文为weixin_44568697原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。