打印随机数、不重复
需求
创建一个长度为10的数组,数组内元素为随机生成的、不重复的 1-100之间的整数。
思路
遍历数组嵌套循环遍历已添加的元素,如果发现随机数已存在数组则重新执行此次循环
代码一
public void Demo1() {
Random rd = new Random();
int[] arr1 = new int[10];
for (int i = 0; i < arr1.length; i++) {
int num = rd.nextInt(100) + 1;
boolean isFind = false;//建立标识默认为false
for (int j = 0; j < i + 1; j++) {
if (arr1[j] == num) {//说明找到了
isFind = true;
break;
}
}
if (isFind) {
i--;//如果找到了则重新执行本次循环
} else {
arr1[i] = num;
}
}
System.out.println(Arrays.toString(arr1));
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
代码二
public static void main(String[] args) {
int[] arr = new int[6];
Random rd = new Random();
int k = 0;
w:
while (k!=arr.length) {
int num = rd.nextInt(6) + 1;
for (int i = 0; i < arr.length; i++) {
if (num == arr[i]) {
continue w;
}
}
arr[k++]=num;
}
System.out.println(Arrays.toString(arr));
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
上次更新: 2023/12/29 11:32:56