如何从一个数组中随机选取若干个不重复的值?

来源:百度知道 编辑:UC知道 时间:2024/05/07 10:55:33

如产生10个范围1-100之间不重复的随机数

import java.util.Arrays;
import java.util.HashSet;

public class RandomMid {
public static void main(String args[]) {
HashSet<Integer> hs = new HashSet<Integer>();
while (true) {
int a = (int) (Math.random() * (100)+1);
if (a >= 1 && a <= 100) {
hs.add(a);
}
if (hs.size() == 10) {
break;
}
}

Object[] a = hs.toArray();

Arrays.sort(a);
Object num2[] = new Object[a.length];

for (int i = 0, j = 0; i < a.length; i++, j++) {
num2[j] = a[i];
System.out.println("产生随机数"+(i+1)+":"+num2[i]);
}

}
}