java随机数不重复出现
时间: 2023-08-04 14:08:27 浏览: 66
java产生不重复的随机数
5星 · 资源好评率100%
可以使用Java中的集合框架来实现不重复的随机数生成。例如,可以使用HashSet类来存储已经生成的随机数,每次生成新的随机数时,先判断该随机数是否已经在HashSet中出现过,如果已经出现过,则重新生成随机数,直到生成一个未出现过的随机数为止。
以下是一个示例代码:
```java
import java.util.HashSet;
import java.util.Random;
import java.util.Set;
public class RandomGenerator {
private final Set<Integer> generated = new HashSet<>();
private final Random random = new Random();
public int nextUniqueRandom(int min, int max) {
int range = max - min + 1;
int randomNum = min + random.nextInt(range);
while (generated.contains(randomNum)) {
randomNum = min + random.nextInt(range);
}
generated.add(randomNum);
return randomNum;
}
}
```
在上面的代码中,nextUniqueRandom()方法接受两个参数,分别是随机数的最小值和最大值。方法内部先计算出随机数的范围,然后使用Random类生成一个随机数。如果这个随机数已经在集合generated中出现过,则继续生成随机数,直到生成一个未出现过的随机数为止。最后将生成的随机数添加到集合generated中,并返回该随机数。
阅读全文