首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Java生成两个给定值之间的随机数

Java生成两个给定值之间的随机数
EN

Stack Overflow用户
提问于 2011-03-11 18:15:32
回答 7查看 801.4K关注 0票数 192

我想知道如何在两个给定值之间生成一个随机数。

我可以生成一个包含以下内容的随机数:

代码语言:javascript
复制
Random r = new Random();

for(int i = 0; i < a.length; i++){
    for(int j = 0; j < a[i].length; j++){
        a[i][j] = r.nextInt();
    }

}

但是,如何生成0到100 (含)之间的随机数呢?

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2011-03-11 18:17:23

你可以使用例如r.nextInt(101)

对于更通用的“在两个数字之间”,请使用:

代码语言:javascript
复制
Random r = new Random();
int low = 10;
int high = 100;
int result = r.nextInt(high-low) + low;

这给出了一个介于10 (含)和100 (不含)之间的随机数

票数 484
EN

Stack Overflow用户

发布于 2013-06-23 07:49:08

假设上界是上界,下界是下界,那么您可以使用以下命令在这两个界之间生成一个随机数r:

代码语言:javascript
复制
int r = (int) (Math.random() * (upper - lower)) + lower;
票数 64
EN

Stack Overflow用户

发布于 2011-10-23 04:55:20

代码语言:javascript
复制
int Random = (int)(Math.random()*100);

如果需要生成多个值,那么只需使用for循环即可

代码语言:javascript
复制
 for (int i = 1; i <= 10 ; i++)
       {
        int Random = (int)(Math.random()*100);
        System.out.println(Random);
       }

如果你想指定一个更合适的范围,比如从10到100 (两者都在这个范围内)

所以代码应该是:

代码语言:javascript
复制
   int Random =10 +  (int)(Math.random()*(91));
   /* int Random = (min.value ) + (int)(Math.random()* ( Max - Min + 1));
  *Where min is the smallest value You want to be the smallest number possible to       
  generate and Max is the biggest possible number to generate*/
票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5271598

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档