使用Random随机生成[min,max]之间的整数:

Posted 偷酒的猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用Random随机生成[min,max]之间的整数:相关的知识,希望对你有一定的参考价值。

如下代码是生成范围在min到max之间的随机整数(包括min和max):

 

import java.util.Random;

/**
 * 生成[min,max]的随机整数
 * @author meikai
 * @version 2017年11月4日 上午11:04:52
 */
public class RandomTest {
    
    public static void main(String args[]) {
        int num =new RandomTest().test(5,12);
        System.out.println("返回的是"+num);
                
    }
    
    /**
     * 返回[min,max]的随机整数
     * @param min
     * @param max
     * @return
     */
    public int test(int min ,int max) {
        
        Random r = new Random();
        int num =r.nextInt(max+1-min)+min;
        return num;         
    }
    

}

 

现在讲解  int num =r.nextInt(max+1-min)+min 是怎么生成我们想要范围的随机整数的:

1、Random类的 nextInt()方法生成随机的int值,该值介于int的区间,也就是-2的31次方到2的31次方-1之间;

2、nextInt(int max)方法生成一个随机的int值,该值介于[0,max)的区间, ‘ [ ‘符号表示包括,而 ‘) ‘表示不包括,所以该方法生成包括0但不包括max的随机整数;

3、nextInt(int max+1)方法生成一个随机的int值,该值介于[0,max]的区间;

4、nextInt(max+1-min)+min,‘max+1-min‘表示我们要的范围总共有多少个数字,‘nextInt(max+1-min)‘生成的是这么多个数字中随机的一个,生成后加上min,最终为介于[min,max]数值的随机数。

 

以上是关于使用Random随机生成[min,max]之间的整数:的主要内容,如果未能解决你的问题,请参考以下文章

js生成随机整数,小数,还是有数字random

Js怎么产生随机数?

Java中随机数生成的问题

java生成指定范围的随机数

java生成指定范围的随机数

random随机数