java随机数产生的范围该怎么定义?

TheDisguiser 2020-08-14 19:35:00 java常见问答 7441

随机数的范围有时是需要控制的,不然会很浪费资源,这次的题目小编就来带大家看看如何在指定范围内获取随机数。

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

如生成范围是[m,n]内指定的随机数

公式:int randNumber =rand.nextInt(n -m + 1) +m;

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);
        }
    }
}

例2:生成随机在[min,max]之间的任意整数

package edu.sjtu.erplab.io;
import java.util.Random;
public class RandomTest
{
    public static void main(String[] args)
    {
        int max = 20;
        int min = 10;
        Random random = new Random();
        int s = random.nextInt(max) % (max - min + 1) + min;
        System.out.println(s);
    }
}

random.nextInt(max)是表示生成[0,max]之间随机数,然后对(max-min+1)取模。

以上就是本篇文章的所有内容,更多关于java常见问题的例子可以来本站关注了解具体。

推荐阅读:

为什么会有javabean?javabean用来干嘛?

java动态数组详解

java正则表达式替换,正则表达式是什么?