java生成指定范围的随机数

要生成在[min,max]之间的随机整数,

 1 package edu.sjtu.erplab.io;
 2 
 3 import java.util.Random;
 4 
 5 public class RandomTest {
 6     public static void main(String[] args) {
 7         int max=20;
 8         int min=10;
 9         Random random = new Random();
10 
11         int s = random.nextInt(max)%(max-min+1) + min;
12         System.out.println(s);
13     }
14 }

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

以生成[10,20]随机数为例,首先生成0-20的随机数,然后对(20-10+1)取模得到[0-10]之间的随机数,然后加上min=10,最后生成的是10-20的随机数。

出处:http://www.cnblogs.com/xwdreamer/archive/2012/06/13/2547426.html

原文地址:https://www.cnblogs.com/Mokaffe/p/4326369.html