生成不重复随机数的一种算法。

时间:2022-10-20 09:50:21
 
package test;

import java.util.*;

/**
* 生成不重复随机数的一种算法。
*
*/
public class Test2 {
public static void main(String[] args) {
// 要排序的一组数字
String[] seed = { "a", "b", "c", "d", "e", "f", "g", "h", "i" };
int len = seed.length;
String[] result = new String[len];
Random random = new Random();
for (int i = 0; i < len; i++) {
// 得到一个位置
int r = random.nextInt(len - i);
// 得到那个位置的数值
result[i] = seed[r];
// 将最后一个未用的数字放到这里
seed[r] = seed[len - 1 - i];
}
System.out.println("result:" + Arrays.toString(result));
}
}