import java.util.HashSet;
public class RandomMaker {
//参数
//min:随机数的最小值
//max:随机数的最大值
//n:生成随机数的个数
//set:存放生成的随机数的集合
//int型也可更改为float、double
public void randomSet(int min, int max, int n, HashSet<Integer> set){
if (n > (max - min + 1) || max < min) {
return;
}
for (int i = 0; i < n; i++) {
int num = (int) (Math.random() * (max - min)) + min;
set.add(num);
}
int setSize = set.size();
if (setSize < n) {
randomSet(min, max, n - setSize, set);
}
}
}
//使用方法如下:
RandomMaker rm = new RandomMaker();//new一个随机数生成器
HashSet<Integer> set= new HashSet<Integer>();//new一个HashSet用于存放生成的随机数
int min = 0;
int max = 100;
int num = 10;
rm.randomSet(min, max, num, set);
//输出随机数
for(int temp : set){
System.out.println(temp);
}