public class ArrayExercise02 {
public static void main(String[] args) {
// // 方法1:
// int[] arr = new int[6];
//
// for (int i = 0; i < arr.length; i++) {// [0,1),[0,30),[1,31)
// arr[i] = (int) (Math.random() * 30) + 1;// Math.random()返回值是double
// boolean flag = false;
// while(true) {
// for (int j = 0; j < i; j++) {
// if (arr[i] == arr[j]) {
// flag = true;
// break;
// }
// }
// if (flag) {//如果没有出现重复则不会执行这个if语句,直接执行下面的break
// flag = false;
// arr[i] = (int) (Math.random() * 6) + 1;
// continue;//重新赋值后continue,紧接着执行相等判断语句
// }
// break;
// }
// }
// for (int i = 0; i < arr.length; i++)
// System.out.print(arr[i] + "\t");
// 方法二:
int[] arr = new int[6];
for (int i = 0; i < arr.length; i++) {// [0,1),[0,6),[1,7)
arr[i] = (int) (Math.random() * 30) + 1;
for (int j = 0; j < i; j++) {
if (arr[i] == arr[j]) {
i--;// 重新对上一个元素赋值
break;
}
}
}
for(int i=0;i<arr.length;i++)
System.out.print(arr[i]+"\t");
}
}