Java实现生成n个不重复的随机数
时间: 2023-07-29 15:14:45 浏览: 93
可以使用 Java 的 Random 类和 Set 集合来实现生成 n 个不重复的随机数。具体实现如下:
```java
import java.util.Random;
import java.util.Set;
import java.util.HashSet;
public class RandomNumberGenerator {
public static Set<Integer> generate(int n, int max) {
Set<Integer> set = new HashSet<>();
Random random = new Random();
while (set.size() < n) {
int number = random.nextInt(max) + 1; // 生成 1 到 max 之间的随机数
set.add(number);
}
return set;
}
}
```
在上面的代码中,我们使用了一个 while 循环,生成随机数并添加到 Set 集合中,直到 Set 集合中的元素个数达到 n 个为止。使用 Set 集合可以确保生成的随机数不重复。生成的随机数的范围是 1 到 max。
调用该方法可以生成 n 个不重复的随机数,例如:
```java
Set<Integer> set = RandomNumberGenerator.generate(10, 100);
System.out.println(set);
```
上面的代码将生成 10 个不重复的随机数,范围是 1 到 100。输出结果类似于:
```
[17, 25, 34, 42, 49, 57, 66, 73, 84, 91]
```
阅读全文