/*生成0≤X<5个不重复的随机数*/
@Test
public void m() {
int[] arr = new int[5];
//数组初始值都是-1
for (int i = 0; i < arr.length; i++) {
arr[i] = -1;
}
Random random = new Random();
int index = 0;
while (index < arr.length) {
int num = random.nextInt(5);//0≤X<5不包含5,结果只能是01234乱序
boolean found = ifFound(arr, num);//数组中是否已经存在num
if (!found) {
arr[index++] = num;
}
}
//遍历arr
for (int item : arr) {
System.out.println(item);
}
}
private boolean ifFound(int[] arr, int num) {
for (int item : arr) {
if (item == num) {
return true;//找到了,数组中已有该数,不用再加入数组,返回true
}
}
return false;//找不到,加入数组,返回flase
}
java生成规定范围内的不重复随机数
于 2024-02-20 11:16:12 首次发布