关于java随机数

2017-10-26  本文已影响54人  芒果味的你呀

java.util包

1.方式1:

Math.Random()*10 产生 [0,10]随机数

直接调用这个Math.Random()函数能够返回带正号的double值,该值大于等于0.0且小于1.0,即取值范围是[0.0,1.0)的左闭右开区间,返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。

2.方式2:

Random random=new Random();   
random.nextInt(10);  产生 [0,10]随机数
随机颜色
 int randomColor=Color.rgb(random.nextInt(256), random.nextInt(256), random.nextInt(256));

3.通过System.currentTimeMillis()来获取一个当前时间毫秒数的long型数字

在我们的System类中有一个currentTimeMillis()方法,这个方法返回一个从1970年1月1号0点0分0秒到目前的一个毫秒数,返回类型是long,我们可以拿他作为一个随机数,我们可以拿他对一些数取模,就可以把他限制在一个范围之内。

4.在固定范围数组内随机

    int[] position=new int[]{20,40,78,98,100,30 };
    int verticalPos= position[(int) (Math.random()*position.length)];

其他需要注意的是:

关于Random类

1、带种子与不带种子的区别Random类使用的根本是策略分带种子和不带种子的Random的实例。

通俗说,两者的区别是:带种子的,每次运行生成的结果都是一样的。

不带种子的,每次运行生成的都是随机的,没有规律可言。

2、创建不带种子的Random对象

Random random = new Random();

3、创建不带种子的Random对象有两种方法:

  1. Random random = new Random(555L);
  2. Random random = new Random();
    random.setSeed(555L);
上一篇下一篇

猜你喜欢

热点阅读