Java nextInt(origin,bound)使用报错

import java.util.Random;

public class TypeDemo1 {
public static void main(String[] args) {
Random r = new Random();
int d = r.nextInt(100,300);
System.out.println(d);
}
}
实际使用时会提示构建错误,提示内容为
java: 对于nextInt(int,int), 找不到合适的方法
方法 java.util.Random.nextInt()不适用
(实际参数列表和形式参数列表长度不同)
方法 java.util.Random.nextInt(int)不适用
(实际参数列表和形式参数列表长度不同)

但是官方文档里面关于nextInt(origin,bound)是有定义的:

default int nextInt(int origin, int bound) {
RandomSupport.checkRange(origin, bound);
return RandomSupport.boundedNextInt(this, origin, bound);
}

nextInt(int,int)✖
简单来说没有这个用法
1、不带参数的nextInt()会生成所有有效的整数(包含正数,负数,0)
2、带参的nextInt(int x)则会生成一个范围在0~x(不包含X)内的任意正整数。
可以自己自定义一个方法
private static int randomInt(int min, int max){
return new Random().nextInt(max)%(max-min+1) + min;
}


Math.random() * (300-100 + 1) + 100