要实现在一定范围内生成随机且不重复的整数,可以使用集合(如Set)来保存已生成的整数,并利用Random类生成随机数。以下是一个示例:
import java.util.*;
public class Main {
public static void main(String[] args) {
int min = 1; // 最小值(包含)
int max = 10; // 最大值(包含)
int count = 5; // 随机数个数
Set<Integer> set = new HashSet<>();
Random random = new Random();
while (set.size() < count) {
int randomNumber = random.nextInt(max - min + 1) + min;
set.add(randomNumber);
}
for (int number : set) {
System.out.println(number);
}
}
}
以上代码会生成指定个数的随机整数,并保证它们不重复。在循环中,我们使用 random.nextInt(max - min + 1) + min
来生成位于指定范围内的随机整数。然后将生成的随机数添加到集合中,如果集合中已存在相同的整数,则不会添加成功,直到达到指定个数为止。
输出:
9
2
7
3
6
请注意,此方法适用于较小的范围和较小的生成数量。对于更大的范围或需要生成更多不重复随机数的情况,可能需要采用其他算法或数据结构来优化性能。