java中生成任意之间数的随机数详解

这篇文章主要介绍了java中生成任意之间数的随机数详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

public static int cssjs(int a,int b) {
    Random rand=new Random();
    int zhi;
    zhi=rand.nextInt(b)%(b-a+1)+a;
    return zhi;
  }

我们观察其Random对象的nextInt(int)方法,发现这个发现这个方法将生成 0 ~ 参数之间随机取值的整数。例如(假设先有 Random rand = new Random();

rand.nextInt(100);这行代码将生成范围 0~100 之间的随机数,有趣的是,取值可能为 0 ,但不可能为 100。我们用中学数学课学习的区间表示法,表示为:[0, 100)。

对产生任意取值范围内随机数的数学原理的解释:先获取0-max之间的随机数,然后对max-min+1取余,这样得到的是0到max-min,然后再加上最小值min,就是需要的随机数。假设max = 100;min=50;random.nextInt(100)应该是0-100之间的数吧,max-min+1 应该是51吧。

取余数所得的数应该是0-50吧。最后再加上最小数(50) 应该是50-100吧。跟假设的最大数和最小数是对应的吧。你可以再假设其它数去试。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

你可能感兴趣的:(java中生成任意之间数的随机数详解)