这里解释一下为什么要这么写
因为Math.random()得到的数是大于或等于 0.0小于 1.0
所以Math.random()最小的值是0,这时候乘最大值或者乘最小值都是获得0到N的值
加最小值是为了保证获得的随机数永远不用小于最小值
如果只乘最大值减最小值那么获得的值加上最小值永远达不到最大值,所以这里要+1
+1之后的最大值可能会超过100但不会超过101,所以强转成int之后还会是100(不存在四舍五入)
package com.gong.test;
import java.util.Random;
public class MyTest {
public static void main(String[] args) {
//获取50到100之间的随机数
int a = 50;
int b = 100;
int random =(int) (Math.random()*(b-a+1) + a);
System.out.println(random);
Random rand = new Random();
int random1 = rand.nextInt(b-a+1)+a;
System.out.println(random1);
}
}