我想在 Java 中创建一组不重复的随机数。
例如,我有一个数组来存储从 0 到 9999 的 10,000 个随机整数。
这是我目前所拥有的:
import java.util.Random;
public class Sort{
public static void main(String[] args){
int[] nums = new int[10000];
Random randomGenerator = new Random();
for (int i = 0; i < nums.length; ++i){
nums[i] = randomGenerator.nextInt(10000);
}
}
}
但是上面的代码会产生重复。如何确保随机数不重复?
最佳答案
Integer[] arr = {...};
Collections.shuffle(Arrays.asList(arr));
例如:
public static void main(String[] args) {
Integer[] arr = new Integer[1000];
for (int i = 0; i < arr.length; i++) {
arr[i] = i;
}
Collections.shuffle(Arrays.asList(arr));
System.out.println(Arrays.toString(arr));
}
关于Java生成非重复随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16000196/