java中生成随机数主要有两种方法,一是用Math的random方法,二是用Random类。下面用具体例子来实践下
//要生成[min,max]闭区间的随机数
//法一使用Math.random方法:
int s=(int)min+(int)(Math.random()*(max-min));
//法二使用Random类
Random random=new Random();
random.nextInt(max-min+1]+max
对于法一来说,Math 类的 random() 方法没有参数,它默认会返回大于等于 0.0、小于 1.0 的 double 类型随机数,即 0<=随机数<1.0。即 (int)min+(int)(Math.random()*min) 语句可以获取 m~m+n 的随机数
对于法二来说,可以先用random.nextInt(max-min+1),范围是[0,max-min]的闭区间,在加上min,即可生成[0+min,max-min+min]即[min,max]的闭区间,当然如果是开区间的话,只要明白random.nextInt(value)的生成范围是[0,value)的半开半闭区间,再进行同样处理即可。