java实现
import java.util.Arrays;
import java.util.Random;
//目的:生成10个 不重复的0~30的整数
public class Demo {
public static void main(String[] args){
int[] num = new int[31];
int len = num.length;
for(int i=0;i<len;i++){
num[i]=i;
}
int[] num2 = new int[10];
Random r = new Random();
for(int i=0;i<num2.length;i++){
int index = r.nextInt(num.length-i); //生成一个随机的索引,第二次循环-1,目的,不需要取到最后的一个索引,最后的索引对应的值已经取到了
num2[i] = num[index];
num[index] = num[index]^num[num.length-1-i]; //将该索引对应的值,放到num数组的最后,代表这个值已经取过了,
num[num.length-1-i] = num[index]^num[num.length-1-i];
num[index] = num[index]^num[num.length-1-i];
}
System.out.println(Arrays.toString(num2));
}
}