精华内容
下载资源
问答
  • java生成指定范围的随机数(两种...// 生成一个 min和 max范围的随机数 int randNumber = rand.nextInt(max- min + 1) + min; // 生成一个 min和 max 范围的随机数 int randNumber = rand.Next(min, m...

    java生成指定范围内的随机数

    //Random
     Random rand = new Random();
     
    //声明一个范围
    int max = 10;
    int min = 2;
    
    // 生成一个 min和 max范围内的随机数
    int randNumber = rand.nextInt(max- min + 1) + min; 
    
    展开全文
  • 生成指定范围的随机数是最常用的技术之。程序员希望通过随机数的方式来处理众多的业务逻辑,测试过程中也希望通过随机数的方式生成包含大量数字的测试用例。问题往往类似于:如何随机生成 1~100 之间...

    生成指定范围内的随机数

    这个是最常用的技术之一。程序员希望通过随机数的方式来处理众多的业务逻辑,测试过程中也希望通过随机数的方式生成包含大量数字的测试用例。问题往往类似于:

    如何随机生成 1~100 之间的随机数,取值包含边界值 1 和 100。

    或者是:

    如何随机生成随机的3位整数?

    等等……

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

    rand.nextInt(100);

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

    那么如果要获得区间 [1~100]的随机数,该怎么办呢?稍微动动脑筋就可以想到:区间 [0, 100) 内的整数,实际上就是区间 [0, 99]。因为最大边界为100,可惜不能等于100,因此最大可能产生的“整数”就是99。

    既然rand.nextInt(100) 获得的值是区间 [0, 99],那么在这个区间左右各加 1,就得到了区间 [1, 100]。因此,代码写成:

    rand.nextInt(100)+ 1;

    即可。运行下面的代码,将获得 [1, 100] 的 10 个取值。

    import java.util.Random;

    public class Test {

    public static void main(String[] args){

    Random rand = new Random();

    for(int i=0; i<10; i++) {

    System.out.println(rand.nextInt(100) + 1);

    }

    }

    }

    同理,很容易知道如果要获得随机两位整数,代码写成:rand.nextInt(90) + 10;

    你一定很惊讶,为什么是这么写出来的。其实,在 nextInt() 方法中作为参数的数字 90 表示:你希望生成的随机数的所有取值的可能性的数量(在本命题中,两位整数取值为 [10, 99],共90个数);加好后面的数字 10 ,表示区间的最小取值。

    你可以验证下,按照这样理解,[1, 100] 的随机数,是不是应该写成rand.nextInt(100) + 1 。千万不要把参数 100 理解为最大取值。只是区间 [1, 100] 正好从 1 开始,所以最大取值和取值可能性数量正好同为 100。

    因此,

    生成随机三位数的代码为:

    rand.nextInt(900)+ 100;

    生成区间 [64,128] 中随机值的代码为:

    rand.nextInt(65)+ 64;

    取值可能性的数量是如何计算出来的呢?当然是 最大取值-最小取值+1 ,所以,有最终公式如下:

    // For Java

    int randNumber =rand.nextInt(MAX - MIN + 1) + MIN; // randNumber 将被赋值为一个 MIN 和 MAX 范围内的随机数

    展开全文
  • Java生成指定范围的随机数

    万次阅读 多人点赞 2019-06-12 16:04:29
    生成指定范围的随机数是最常用的技术之。程序员希望通过随机数的方式来处理众多的业务逻辑,测试过程中也希望通过随机数的方式生成包含大量数字的测试用例。问题往往类似于: 如何随机生成 1~100 之间...

    生成指定范围内的随机数

    这个是最常用的技术之一。程序员希望通过随机数的方式来处理众多的业务逻辑,测试过程中也希望通过随机数的方式生成包含大量数字的测试用例。问题往往类似于:

    如何随机生成 1~100 之间的随机数,取值包含边界值 1 和 100。

    或者是:

    如何随机生成随机的3位整数?

    等等……

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

    rand.nextInt(100);

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

    那么如果要获得区间 [1~100]的随机数,该怎么办呢?稍微动动脑筋就可以想到:区间 [0, 100) 内的整数,实际上就是区间 [0, 99]。因为最大边界为100,可惜不能等于100,因此最大可能产生的“整数”就是99。

    既然rand.nextInt(100) 获得的值是区间 [0, 99],那么在这个区间左右各加 1,就得到了区间 [1, 100]。因此,代码写成:

    rand.nextInt(100)+ 1;

    即可。运行下面的代码,将获得 [1, 100] 的 10 个取值。

    import java.util.Random;
     
    public class Test {
     
    public static void main(String[] args){
     
    Random rand = new Random();
     
    for(int i=0; i<10; i++) {
     
    System.out.println(rand.nextInt(100) + 1);
     
    }
    

    同理,很容易知道如果要获得随机两位整数,代码写成:rand.nextInt(90) + 10;

    你一定很惊讶,为什么是这么写出来的。其实,在 nextInt() 方法中作为参数的数字 90 表示:你希望生成的随机数的所有取值的可能性的数量(在本命题中,两位整数取值为 [10, 99],共90个数);加好后面的数字 10 ,表示区间的最小取值。

    你可以验证下,按照这样理解,[1, 100] 的随机数,是不是应该写成rand.nextInt(100) + 1 。千万不要把参数 100 理解为最大取值。只是区间 [1, 100] 正好从 1 开始,所以最大取值和取值可能性数量正好同为 100。

    因此,

    生成随机三位数的代码为:

    rand.nextInt(900)+ 100;

    生成区间 [64,128] 中随机值的代码为:

    rand.nextInt(65)+ 64;

    取值可能性的数量是如何计算出来的呢?当然是 最大取值-最小取值+1 ,所以有最终公式如下:

    ★★★★★

    int randNumber =rand.nextInt(MAX - MIN + 1) + MIN; // randNumber 将被赋值为一个 MIN 和 MAX 范围内的随机数

     

    展开全文
  • 我最常用的一个方法就是生成一个随机因子,让这个随机因子来生成一个范围的数,比如 Random rand=new Random(); int value=rand.nextInt(100); 这个时候就生成了一个1~100范围内的随机数, 注意这个范围的边界...

    我最常用的一个方法就是生成一个随机因子,让这个随机因子来生成一个范围的数,比如

    Random rand=new Random();
    int value=rand.nextInt(100);

    这个时候就生成了一个1~100范围内的随机数,

    注意这个范围的边界问题,它的范围是[1,100),不包括100,或者写成[1,99].

    如果想生成[50,150)的一组随机数怎么办呢?

    看代码:

    Random rand=new Random();
    int value=rand.nextInt(100)+50;

    简单吧~~

    展开全文
  • java生成指定范围的随机数(太屌了)

    万次阅读 多人点赞 2018-11-29 23:39:04
    生成指定范围的随机数是最常用的技术之。程序员希望通过随机数的方式来处理众多的业务逻辑,测试过程中也希望通过随机数的方式生成包含大量数字的测试用例。问题往往类似于: 如何随机生成 1~100 之间...
  • 生成指定范围的随机数是最常用的技术之。程序员希望通过随机数的方式来处理众多的业务逻辑,测试过程中也希望通过随机数的方式生成包含大量数字的测试用例。问题往往类似于: 如何随机生成 1~100 之间...
  • Java生成一个随机数

    2017-06-25 22:50:41
    生成0-149的整型随机数Random ... //int范围的随机数(0-149)生成50-149的整型随机数Random rand = new Random(); int i = rand.nextInt(99); //int范围的随机数(0-99) i += 50; //(0-99)的数加上50,即可达
  • 2. 生成指定范围的随机数2.1 使用Math.random()Math.random()生成一个范围在0到1之间的double类型的随机数,且该值大于等于0.0,小于1。示例编码如下:public int getRandomNumber(int min, int max...
  • 生成指定范围的随机数是最常用的技术之,程序员希望通过随机数的方式来处理众多的业务逻辑,测试过程中也希望通过随机数的方式生成包含大量数字的测试用例。问题往往类似于:如何随机生成 1~100 之间...
  • 今天在写代码时候需要用到一个生成指定范围随机数的函数,百度了一下,发现了很多种方法,这里简单为大家整理一下,方便需要朋友
  • 有一次,我在逛 Stack Overflow 的时候,发现有这样一个问题:“Java 中如何产生一个指定范围的随机数”,我心想,“就这破问题,竟然有 398 万的阅读量,统计确定没搞错?不就一个 Math.random() 的事儿嘛。”...
  • 1 import java.util.ArrayList; 2 import java.util.List; 3 import java.util.Random; 4 5 6 public class RandRange { 7 8 public List get(int start, int end){ 9 int cnt = end - start
  • import java.util.Random; public class Test { public static void main(String[] args) { // TODO Auto-generated method stub //默认构造方法 ... //产生一个0-100不包含100整数 i...
  • Java生成确定范围的随机数,有两种方法: (1)使用util包下面的Random类,Random类中有一个nextInt()方法,用于生成随机的整数。nextInt(int n),参数n表示0&lt;=随机数&lt;n。所以在实际应用中,应该...
  • 实现一个方法,输入范围的上限和下限,返回随机数,见以下代码中的randomNumber方法。代码很简单,创建Random类的实例,然后调用了nextInt(int bound)方法,生成[0,bound)范围里的随机数,注意:包括0,不包括bound...
  • 生成指定范围的随机数是最常用的技术之。程序员希望通过随机数的方式来处理众多的业务逻辑,测试过程中也希望通过随机数的方式生成包含大量数字的测试用例。问题往往类似于: 如何随机生成 1~100 之间...
  • 随机生成N个不重复数 /** * 随机指定范围内N个不重复数 * 在初始化无重复待选数组中随机... * 然后从len-2里随机产生下一个随机数,如此类推 * @param max 指定范围最大值 * @param min 指定范围最小值 ...
  • 如何随机生成 1~100 之间的随机数,取值包含边界值 1 和 100。或者是:如何随机生成随机的3位整数? 这里提供三种方法: 1.使用Math类的random方法,这个方法返回的是一个0~1之间的double类型的小数 public class ...
  • ]生成指定范围的随机数是最常用的技术之。程序员希望通过随机数的方式来处理众多的业务逻辑,测试过程中也希望通过随机数的方式生成包含大量数字的测试用例。问题往往类似于: 如何随机生成 1~100 之间...
  • 最近工作中的一个业务需要再确定范围内取出一个随机数,网上到时搜出来一堆可以实现方法,但是鄙人仍是理解不了,虽说已经copy方法直接完成工作了。今天抽时间整理下,希望能够帮助大家更好理解随机数的实现原理...
  • 基本知识java中获取随机数主要有2种方式,一个是Random类获取,一个是用math类获取。Math类方法名称 double java.lang.Math.random()方法说明 返回一个[0.0,1.0)之间double类型数据Random类方法名称(包括...
  • java 生成某个区间的随机数

    千次阅读 2018-11-14 13:57:34
    生成指定范围的随机数,这是最常用的技术之。程序员希望通过随机数的方式来处理众多的业务逻辑,测试过程中也希望通过随机数的方式生成包含大量数字的测试用例。问题往往类似于: 如何随机生成 1~100 之间...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 408
精华内容 163
关键字:

java生成一个范围的随机数

java 订阅